Commit 50597612 by vida092

arbol covariable fuente

parent a8c3f712
......@@ -245,7 +245,7 @@
<div class="btn_nav_continer">
<button id="specie_before" class="btn btn-primary glyphicon glyphicon-chevron-up" type="button" ></button>
<button id="specie_before" class="btn btn-primary glyphicon glyphicon-chevron-up" type="button" ></button>
<button id="specie_next" class="btn btn-primary glyphicon glyphicon-chevron-down" type="button" ></button>
......@@ -271,8 +271,11 @@
<!--<div class="col-md-12 col-sm-12 col-xs-12">-->
<label class="text-sm" id="footprint_region" ></label>
<select id="footprint_region_select" class="form-control" >
<option value="México" selected="selected">
México
</option>
</select>
<!--</div>-->
<!--agregar sólo México-->
</div>
<div id="tuto_resolution" class="col-md-6 col-sm-12 col-xs-12">
......@@ -281,17 +284,52 @@
<label class="text-sm" id="lb_mapa_res" for="grid_resolution"></label>
<select class="form-control" id="grid_resolution">
<option value="state">Estados</option>
<option value="mun">Municipios</option>
<option selected="selected" value="mun">Municipios</option>
<option value="ageb">AGEBs</option>
<!-- <option value="8">8 km</option>
<option selected="selected" value="16">16 km</option>
<option value="8">8 km</option>
<option value="16">16 km</option>
<option value="32">32 km</option>
<option value="64">64 km</option> -->
<option value="64">64 km</option>
</select>
</div>
</div>
<div id="tuto_agent" class="col-md-6 col-sm-12 col-xs-12">
<div class="form-group">
<label class = "text-sm" id="agent">Agente:</label>
<select id = "agent_selected" class="form-control">
<option value="model_default" selected disabled>Selecione un agente</option>
<option value="Patogenos">Patógeno</option>
<option value="Hospederos">Hospedero</option>
<option value="Vectores">Vector</option>
</select>
</div>
</div>
<div id="tuto_disease" class="col-md-6 col-sm-12 col-xs-12">
<div class="form-group" >
<label class = "text-sm" id="disease">Enfermedad:</label>
<select id = "disease_selected" class="form-control">
<option value = "dis_default" selected disabled> Seleccione Enfermedad</option>
<option value ="todas">Sin enfermedad</option>
<!--<option value="Enfermedad de Chagas">Enfermedad de Chagas</option>
<option value="Fiebre de Zika"> Fiebre de Zika</option>
<option value="Fiebre de Dengue">Fiebre de Dengue</option>
<option value="Fiebre Chikunguña"> Fiebre Chikinguña</option>
<option value="Hantavirosis"> Hantavirosis</option>
<option value="Fiebre del Nilo"> Fiebre del Nilo</option>
<option value="Enfermedad de Lyme"> Enfermedad de Lyme </option>
<option value="Fiebre del Nilo"> Fiebre del Nilo</option>
<option value="Leptospirosis"> Leptospirosis</option>
<option value="Leishmaniasis"> Leishmaniasis</option>-->
</select>
</div>
</div>
</div>
<!-- container de 40% seteado en componete -->
......@@ -331,12 +369,12 @@
<div class="col-md-6 col-sm-6 col-xs-6">
Inicio:
<input id="date_timepicker_start" type="text" value="" style="width: 100px;">
<input id="yearPicker_start" type="text" value="" style="width: 100px;">
</div>
<div class="col-md-6 col-sm-6 col-xs-6">
Fin:
<input id="date_timepicker_end" type="text" value="" style="width: 100px;">
<input id="yearPicker_end" type="text" value="" style="width: 100px;">
</div>
</div>
......@@ -536,8 +574,8 @@
<div class="col-md-5 margin-top-five pull-left ">
<label class="label_item " id="labelValidationTemp" type="label"></label>
<input id="chkValidationTemp" class="checkbox_item " type="checkbox"/>
</div>
</div>
</div>
<!-- <div class="row"> -->
......@@ -553,11 +591,11 @@
Fin:
<input id="date_timepicker_end_val" type="text" value="" style="width: 100px;" disabled="true">
</div>
</div>
<!-- </div> -->
<!-- </div> -->
</div>
......@@ -582,11 +620,11 @@
<div class="col-md-5 margin-top-five pull-left ">
<label class="label_item " id="labelValidation" type="label"></label>
<input id="chkValidation" class="checkbox_item " type="checkbox"/>
</div>
</div>
</div>
</div>
......@@ -616,9 +654,9 @@
<input id="chkMinOcc" class="checkbox_item pull-left" type="checkbox" checked="true"/>
<input id="occ_number" class="occ_number " type="number" min="1" value="1">
</div>
</div>
</div>
</div>
</div>
......@@ -647,13 +685,13 @@
<input id="chkApriori" class="checkbox_item pull-left" type="checkbox" />
</div>
</div>
</div>
</div>
<div id="tuto_map_prob" class="row container_15p">
......@@ -679,11 +717,11 @@
<label class="label_item pull-left" id="lb_mapa_prob" type="label"></label>
<input id="chkMapaProb" class="checkbox_item pull-left" type="checkbox" />
</div>
</div>
</div>
</div>
<!-- </div> -->
......@@ -740,7 +778,7 @@
<label for="basic-url">Visualización</label>
<div class=" dropdown_group ">
<!-- <div class=" dropdown_group ">
......@@ -759,7 +797,7 @@
</div>
</div>
</div> -->
</div>
......
......@@ -66,17 +66,17 @@
</header>
<section id="content">
<h2>Bienvenido a EPI-SPECIES<span>Plataforma Universitaria de Eco-epidemiologia Espacial</span></h2>
<p>EPI-SPECIES es una herramienta interactiva para el análisis del nicho epidemiológico de enfermedades infecciosas y la creación de modelos predictivos para analizar su dinámica espacio-temporal en México.</p>
<h2>Bienvenido a EpI-SPECIES<span>Plataforma Universitaria de Eco-epidemiología Espacial</span></h2>
<p>EpI-SPECIES es una herramienta interactiva para el análisis del nicho epidemiológico de enfermedades infecciosas y la creación de modelos predictivos para analizar su dinámica espacio-temporal en México.</p>
<h3>Análisis de nicho epidemiológico</h3>
<p>Si deseas realizar un análisis de nicho epidemiológico basta con seguir los siguientes pasos:</p>
<ul class="steps">
<li>Selecciona la enfermedad objetivo</li>
<li>Escoge tus covariables</li>
<li>Analiza tus resultados</li>
<li><a class="button-1" href="https://epispecies.c3.unam.mx/geoportal_v0.1.html">Ir a Análisis de Nicho</a></li>
<li><a class="button-1" href="geoportal_v0.1.html">Ir a Análisis de Nicho</a></li>
</ul>
<p>Si es la primera vez que utilizas la plataforma, te recomendamos dar clic en el botón de <b>Casos de uso</b> o el botón de <b>Tutorial</b> que te orientara paso a paso como utilizar EPI-SPECIES</p>
<p>Si es la primera vez que utilizas la plataforma, te recomendamos dar clic en el botón de <b>Casos de uso</b> o el botón de <b>Tutorial</b> que te orientara paso a paso como utilizar EpI-SPECIES</p>
</section>
<footer>
<p class="copyright">©Todos los derechos reservados Chilam · C3 · UNAM - 2021.</p>
......
var url_front = "https://epispecies.c3.unam.mx";
var url_front = "/geoportal_v0.1.html";
var url_api = "https://epispecies.c3.unam.mx/api/dev/";
var url_nicho = url_front + "/geoportal_v0.1.html";
......
......@@ -28,7 +28,7 @@
<article>
<pre class="prettyprint source linenums"><code>
/**
* Módulo variable, utilizado para crear y gestionar los selectores de grupos de variables en nicho ecológico y comunidad ecológica.
* Módulo variable, utilizado para crear y gos sestionar lelectores de grupos de variables en nicho ecológico y comunidad ecológica.
*
* @namespace variable_module
*/
......
......@@ -692,148 +692,191 @@ var map_module = (function (url_geoserver, workspace, verbose, url_zacatuche) {
_REGION_SELECTED = region_selected;
$.ajax({
url: _url_zacatuche + "/niche/especie/getGridGeoJson",
type: 'post',
dataType: "json",
data: {
"grid_res": grid_res,
"footprint_region": _REGION_SELECTED
},
success: function (json) {
console.log(json);
// Asegura que el grid este cargado antes de realizar una generacion por enlace
$("#loadData").prop("disabled", false);
$('#map').loading('stop');
$('#map2').loading('stop');
$('#tuto_mapa_occ').loading('stop');
let query = 'query{get_mesh(grid_res: "' + _grid_res + '"){cve simplified_geom}}'
console.log(query)
console.log("aquí está el query ------------------------------------")
// query{get_mesh(grid_res: "mun"){cve simplified_geom}}
$.ajax({
method: "POST",
url: "https://covid19.c3.unam.mx/gateway/api/nodes/",
contentType: "application/json",
data: JSON.stringify({query: query}),
success: function (resp) {
let data = resp["data"];
let obj = data["get_mesh"]
let json = {type: 'FeatureCollection',crs: {}, features: []}
console.log(obj)
for (let i = 0; i < obj.length; i++)
{let prop = new Object();
let geom = new Object();
geom = Object.assign({},obj[i].simplified_geom)
prop = parseInt(obj[i].cve)
let prope = new Object();
prope.gridid =prop
let type = new Object();
type.type = "feature"
type.geometry = geom
type.properties = prope
json.features.push(type)
json.crs = {
"type": "name",
"properties": {
"name": "urn:ogc:def:crs:EPSG::4326"
}
}
}
_grid_map = json;
_grid_res = grid_res;
_first_loaded = true;
_pad = 0;
colorizeFeatures([], _grid_map, _tileLayer);
_tileIndex = geojsonvt(_grid_map, _tileOptions);
_tileLayer.redraw();
//console.log(json[1].geometry)
console.log(json)
// obj["features"].push( json["geometry"])
if (_tipo_modulo === _MODULO_NICHO) {
_grid_map_occ = jQuery.extend(true, {}, json) // se genera un clon del gridmap
_grid_map_target = jQuery.extend(true, {}, json) // se genera un clon del gridmap
_grid_map_decil = jQuery.extend(true, {}, json) // se genera un clon del gridmap
_grid_map_state_mun = jQuery.extend(true, {}, json) // se genera un clon del gridmap
// console.log(_grid_map_occ);
// console.log(_grid_map_target);
// console.log(features)
// Asegura que el grid este cargado antes de realizar una generacion por enlace
$("#loadData").prop("disabled", false);
$('#map').loading('stop');
$('#map2').loading('stop');
$('#tuto_mapa_occ').loading('stop');
_grid_map = json;
colorizeDecileFeatures(_grid_map_decil, _tileDecilLayer);
_tileIndexDecil = geojsonvt(_grid_map_decil, _tileOptions);
_tileDecilLayer.redraw();
_grid_res = grid_res;
_first_loaded = true;
colorizeTargetFeatures(_grid_map_target, _tileLayerSpecies);
_tileIndexSpecies = geojsonvt(_grid_map_target, _tileOptions);
_tileLayerSpecies.redraw();
_pad = 0;
colorizeFeatures([], _grid_map, _tileLayer);
_tileIndex = geojsonvt(_grid_map, _tileOptions);
_tileLayer.redraw();
colorizeFeatures([], _grid_map_occ, _tileLayerSP);
_tileIndexSP = geojsonvt(_grid_map_occ, _tileOptions);
_tileLayerSP.redraw();
if (_tipo_modulo === _MODULO_NICHO) {
colorizeFeaturesSelectedStateMun([], _grid_map_state_mun, _tileLayerStateMun);
_tileIndexStateMun = geojsonvt(_grid_map_state_mun, _tileOptions);
_tileLayerStateMun.redraw();
_grid_map_occ = jQuery.extend(true, {}, json) // se genera un clon del gridmap
_grid_map_target = jQuery.extend(true, {}, json) // se genera un clon del gridmap
_grid_map_decil = jQuery.extend(true, {}, json) // se genera un clon del gridmap
_grid_map_state_mun = jQuery.extend(true, {}, json) // se genera un clon del gridmap
console.log(_grid_map_occ);
console.log(_grid_map_target);
}
_first_loaded = false;
colorizeDecileFeatures(_grid_map_decil, _tileDecilLayer);
_tileIndexDecil = geojsonvt(_grid_map_decil, _tileOptions);
_tileDecilLayer.redraw();
// agrega listener para generar pop en celda
map.on('click', function (e) {
console.log(e.latlng.lat + ", " + e.latlng.lng);
colorizeTargetFeatures(_grid_map_target, _tileLayerSpecies);
_tileIndexSpecies = geojsonvt(_grid_map_target, _tileOptions);
_tileLayerSpecies.redraw();
if (_tipo_modulo === _MODULO_NICHO) {
_display_module.showGetFeatureInfo(e.latlng.lat, e.latlng.lng, _taxones, _REGION_SELECTED);
}
});
colorizeFeatures([], _grid_map_occ, _tileLayerSP);
_tileIndexSP = geojsonvt(_grid_map_occ, _tileOptions);
_tileLayerSP.redraw();
if (_tipo_modulo === _MODULO_NICHO) {
map_sp.on('click', function (e) {
console.log(e.latlng.lat + ", " + e.latlng.lng);
colorizeFeaturesSelectedStateMun([], _grid_map_state_mun, _tileLayerStateMun);
_tileIndexStateMun = geojsonvt(_grid_map_state_mun, _tileOptions);
_tileLayerStateMun.redraw();
if (_tipo_modulo === _MODULO_NICHO) {
// verifica que ya este la malla cargada y que al menos exista un especie solcitada
if(_grid_map_occ === undefined){
return
}
}
var rango_fechas = $("#sliderFecha").slider("values");
// console.log(rango_fechas)
_first_loaded = false;
if(_lin_inf === undefined)
_lin_inf = rango_fechas[0]
if(_lin_sup === undefined)
_lin_sup = rango_fechas[1]
// console.log("_lin_inf: " + _lin_inf)
// console.log("_lin_sup: " + _lin_sup)
// console.log("_sin_fecha: " + _sin_fecha)
// console.log("_con_fosil: " + _con_fosil)
console.log(_taxones)
console.log("_DELETE_STATE_CELLS: " + _DELETE_STATE_CELLS)
// agrega listener para generar pop en celda
map.on('click', function (e) {
_display_module.showGetFeatureInfoOccCell(e.latlng.lat, e.latlng.lng, _taxones, _lin_inf, _lin_sup, _sin_fecha, _con_fosil, _grid_res, _REGION_SELECTED, _DELETE_STATE_CELLS );
}
console.log(e.latlng.lat + ", " + e.latlng.lng);
});
if (_tipo_modulo === _MODULO_NICHO) {
_display_module.showGetFeatureInfo(e.latlng.lat, e.latlng.lng, _taxones, _REGION_SELECTED);
}
// metodo del módulo de NICHO para cargar las especies
busca_especie_grupo(taxones, region_selected, val_process, grid_res)
});
}
else{
if (_tipo_modulo === _MODULO_NICHO) {
map_sp.on('click', function (e) {
_display_module.callDisplayProcess(val_process)
console.log(e.latlng.lat + ", " + e.latlng.lng);
if (_tipo_modulo === _MODULO_NICHO) {
}
// verifica que ya este la malla cargada y que al menos exista un especie solcitada
if(_grid_map_occ === undefined){
return
}
},
error: function (requestObject, error, errorThrown) {
var rango_fechas = $("#sliderFecha").slider("values");
// console.log(rango_fechas)
if(_lin_inf === undefined)
_lin_inf = rango_fechas[0]
if(_lin_sup === undefined)
_lin_sup = rango_fechas[1]
// console.log("_lin_inf: " + _lin_inf)
// console.log("_lin_sup: " + _lin_sup)
// console.log("_sin_fecha: " + _sin_fecha)
// console.log("_con_fosil: " + _con_fosil)
console.log(_taxones)
console.log("_DELETE_STATE_CELLS: " + _DELETE_STATE_CELLS)
_display_module.showGetFeatureInfoOccCell(e.latlng.lat, e.latlng.lng, _taxones, _lin_inf, _lin_sup, _sin_fecha, _con_fosil, _grid_res, _REGION_SELECTED, _DELETE_STATE_CELLS );
}
console.log(requestObject);
console.log(error);
console.log(errorThrown);
// alert("Existe un error en la conexión con el servidor, intente mas tarde");
});
// metodo del módulo de NICHO para cargar las especies
busca_especie_grupo(taxones, region_selected, val_process, grid_res, "nicho", _DISEASE_SELECTED, _AGENT_SELECTED)
}
else{
_display_module.callDisplayProcess(val_process)
}
},
error: function (requestObject, error, errorThrown) {
console.log(requestObject);
console.log(error);
console.log(errorThrown);
// alert("Existe un error en la conexión con el servidor, intente mas tarde");
// console.log("abort");
$('#map').loading('stop');
$('#map2').loading('stop');
}
$('#map').loading('stop');
$('#map2').loading('stop');
}
});
});
}
......@@ -1049,6 +1092,7 @@ var map_module = (function (url_geoserver, workspace, verbose, url_zacatuche) {
if (_first_loaded) {
_VERBOSE ? console.log("first loaded") : _VERBOSE;
console.log(grid_map)
for (var i = 0; i < grid_map.features.length; i++) {
......@@ -2055,16 +2099,20 @@ var map_module = (function (url_geoserver, workspace, verbose, url_zacatuche) {
* @param {array} taxones - Array con taxones seleccionados
*/
function busca_especie_grupo(taxones, region = 1, val_process = false, grid_res = "state", fuente = "nicho") {
function busca_especie_grupo(taxones, region = 1, val_process = false, grid_res = "state", fuente = "nicho", disease, agent) {
_VERBOSE ? console.log("busca_especie_grupo") : _VERBOSE;
_VERBOSE ? console.log("busca_especie_grupo") : _VERBOSE;
console.log("_grid_map_occ: " + _grid_map_occ)
console.log("_grid_res: " + _grid_res)
console.log("grid_res: " + grid_res)
console.log("_REGION_SELECTED: " + _REGION_SELECTED)
console.log("region: " + region)
_DISEASE_SELECTED = disease;
_AGENT_SELECTED = agent;
console.log("_DISEASE_SELECTED" + disease)
console.log("_AGENT_SELECTED" + _AGENT_SELECTED)
_taxones = taxones
console.log(_taxones)
......@@ -2170,127 +2218,145 @@ var map_module = (function (url_geoserver, workspace, verbose, url_zacatuche) {
"region": region
}
// if (_AGENT_SELECTED == 'Hospederos')
// var _url = 'http://10.90.0.42:4006/graphql/hospederos/'
// else if (_AGENT_SELECTED == 'Patogenos')
// var _url = "http://10.90.0.42:4007/graphql/patogenos/"
// else
// var _url = "http://10.90.0.42:4008/graphql/vectores/"
var _url = "https://covid19.c3.unam.mx/gateway/api/nodes/"
let nodo = _AGENT_SELECTED.toLowerCase()
let fecha_ini = document.getElementById("yearPicker_start").value.trim()
let fecha_fin = document.getElementById("yearPicker_end").value.trim()
fetch(_url_zacatuche + "/niche/especie/getGridSpeciesTaxon", {
if ( fecha_ini.length < 3)
var query = 'query{occurrences_by_taxon_' + nodo + '(query: "nombreenfermedad = \''+ _DISEASE_SELECTED + '\' AND '+ _PARENT_FIELD.toLowerCase() +' = \'' + _LABEL_VALUE +'\' "){individuosinfectados gridid_'+ _grid_res + '}}'
else
var query = 'query{occurrences_by_taxon_' + nodo + '(query: "nombreenfermedad = \''+ _DISEASE_SELECTED + '\' AND '+ _PARENT_FIELD.toLowerCase() +' = \'' + _LABEL_VALUE +'\' AND aniocolecta >= \''+ fecha_ini + ' \' AND aniocolecta <= \'' + fecha_fin + ' \'"){individuosinfectados gridid_'+ _grid_res + '}}'
console.log(query)
$.ajax({
method: "POST",
body: JSON.stringify(data),
headers: {
"Content-Type": "application/json"
}
})
.then(resp => resp.json())
.then(resp => {
url: _url,
contentType: "application/json",
data: JSON.stringify({query: query}),
success: function (resp) {
let mesh = "gridid_" + _grid_res
let data2 = resp.data["occurrences_by_taxon_" + nodo]
//let data = resp["data"];
//let obj = data["get_mesh"]
console.log(data2)
let gridid = {gridid: []}
for (let i = 0; i < data2.length; i++) {
let mesh = "gridid_" + _grid_res
gridid.gridid.push(parseInt(data2[i][mesh]))
}
console.log(gridid)
$('#tuto_mapa_occ').loading('stop');
function onlyUnique(value, index, self) {
return self.indexOf(value) === index;
}
// inicializa variables para eliminar celdas
_DELETE_STATE_CELLS = false;
_excludedcells = []
$("#deletePointsButton").css("backgroundColor", "#fff");
var a = gridid["gridid"];
var unique = a.filter(onlyUnique);
//console.log(unique)
//console.log(a)
let vec = []
_data_sp_occ = resp.data
// asigna una referencia global para tener el resultado de la útima petición
// _data_sp_occ = data_sp
for (let i = 0; i < unique.length; i++) {
let value = unique[i]
let arr = []
for (let j = 0; j < data2.length; j++)
if (data2[j][mesh] == value) {
arr.push(data2[j])
//console.log(arr)
}
var occurrences = arr.reduce(function (prev, cur) {
return prev + cur.individuosinfectados;
}, 0);
var num_cell_occ = resp.data.length
var num_occ = 0
//console.log('Total:', occurrences);
let aux = new Object();
aux.gridid = value
aux.fp = 0
aux.tp = 0
aux.occ = occurrences
aux.target = "true"
aux.tp = 0
_data_sp_occ.forEach(function(item){
num_occ += parseInt(item["occ"])
})
console.log(_data_sp_occ)
console.log("num_cell_occ: " + num_cell_occ)
console.log("num_occ: " + num_occ)
vec.push(aux)
// rellena cuadro de resumen
_fillSpeciesData(num_occ, num_cell_occ);
// manda mensaje cuando no hay registro de especies en celdas
if (num_cell_occ === 0) {
_VERBOSE ? console.log("No hay registros de especie") : _VERBOSE;
_toastr.info($.i18n.prop('lb_norecords'));
return;
}
}
$('#tuto_mapa_occ').loading('stop');
// Se activa boton de siguiente paso
$("#specie_next").css('visibility', 'visible');
$("#specie_next").show("slow");
// inicializa variables para eliminar celdas
_DELETE_STATE_CELLS = false;
_excludedcells = []
$("#deletePointsButton").css("backgroundColor", "#fff");
colorizeFeaturesByJSON(_grid_map_occ, _data_sp_occ)
clearAllLayers();
if (_tipo_modulo === _MODULO_NICHO) {
_data_sp_occ = vec
// asigna una referencia global para tener el resultado de la útima petición
// _data_sp_occ = data_sp
var num_cell_occ = vec.length
var num_occ = 0
var data = {
"target_taxons": taxones,
"liminf": _lin_inf,
"limsup": _lin_sup,
"sfecha": _sin_fecha,
"sfosil": _con_fosil,
"grid_res": grid_res,
"region": region
}
_data_sp_occ.forEach(function (item) {
num_occ += parseInt(item["occ"])
})
console.log(_data_sp_occ)
console.log("num_cell_occ: " + num_cell_occ)
console.log("num_occ: " + num_occ)
// $('#hist_fecha_container').loading({
// stoppable: true
// });
// rellena cuadro de resumen
_fillSpeciesData(num_occ, num_cell_occ);
// Histograma de años de la especie. Se comenta para analisis de covid19
// TODO: Hacerlo en fechas mensuales y diarias
// fetch(_url_zacatuche + "/niche/especie/getCountByYear", {
// method: "POST",
// body: JSON.stringify(data),
// headers: {
// "Content-Type": "application/json"
// }
// })
// .then(resp => resp.json())
// .then(resp => {
// manda mensaje cuando no hay registro de especies en celdas
if (num_cell_occ === 0) {
_VERBOSE ? console.log("No hay registros de especie") : _VERBOSE;
_toastr.info($.i18n.prop('lb_norecords'));
return;
}
// if(resp.ok == true){
// var data = resp.data
// console.log(data)
// Se activa boton de siguiente paso
$("#specie_next").css('visibility', 'visible');
$("#specie_next").show("slow");
// $('#hist_fecha_container').loading('stop');
// _histogram_module.createBarChartFecha(data);
colorizeFeaturesByJSON(_grid_map_occ, _data_sp_occ)
// }
clearAllLayers();
// })
// .catch(err => {
if (_tipo_modulo === _MODULO_NICHO) {
// // _VERBOSE ? console.log("error: " + textStatus) : _VERBOSE;
// _VERBOSE ? console.log(errorThrown) : _VERBOSE;
// _VERBOSE ? console.log(jqXHR.responseText) : _VERBOSE;
// });
}
})
.catch(err => {
// _VERBOSE ? console.log("error: " + textStatus) : _VERBOSE;
_VERBOSE ? console.log(errorThrown) : _VERBOSE;
_VERBOSE ? console.log(jqXHR.responseText) : _VERBOSE;
var data = {
"target_taxons": taxones,
"liminf": _lin_inf,
"limsup": _lin_sup,
"sfecha": _sin_fecha,
"sfosil": _con_fosil,
"grid_res": grid_res,
"region": region
}
$('#tuto_mapa_occ').loading('stop');
$('#hist_fecha_container').loading('stop');
$("#specie_next").css('visibility', 'hidden');
}
}
});
}
......@@ -2351,7 +2417,8 @@ var map_module = (function (url_geoserver, workspace, verbose, url_zacatuche) {
"sfecha": _sin_fecha,
"sfosil": _con_fosil,
"grid_res": grid_res_val,
"footprint_region": footprint_region
"footprint_region": footprint_region,
// "disease": disease
},
beforeSend: function (xhr) {
xhr.setRequestHeader('X-Test-Header', 'test-value');
......@@ -3156,7 +3223,7 @@ var map_module = (function (url_geoserver, workspace, verbose, url_zacatuche) {
}
......
......@@ -11,6 +11,10 @@ var module_nicho = (function () {
var _VERBOSE = true;
var _REGION_SELECTED;
var _REGION_TEXT_SELECTED;
var _DISEASE_SELECTED;
var _DISEASE_TEXT_SELECTED;
var _AGENT_SELECTED;
var _AGENT_TEXT_SELECTED;
// actualizar este arreglo si cambian los ids de las secciones
var _SCROLL_SECTIONS = ["section0","section1","map","myScrollableBlockEpsilonDecil","histcontainer_row"];
......@@ -60,7 +64,7 @@ var module_nicho = (function () {
map_taxon.set("especie", "species");
map_taxon.set("species", "species");
var _taxones = [];
var _taxones = [];
......@@ -264,6 +268,32 @@ var module_nicho = (function () {
});
$("#disease_selected").change(function (e) {
console.log("Cambiaste a " + ($("#disease_selected").val()));
_DISEASE_SELECTED = ($("#disease_selected").val());
_DISEASE_TEXT_SELECTED = $("#disease_selected option:selected").text();
//_map_module_nicho.changeRegionView(_DISEASE_SELECTED);
_regenMessage();
});
$("#agent_selected").change(function (e) {
console.log("Cambiando a " + ($("#agent_selected").val()));
_AGENT_SELECTED = ($("#agent_selected").val());
_AGENT_TEXT_SELECTED = $("#agent_selected option:selected").text();
//_map_module_nicho.changeRegionView(_AGENT_SELECTED);
_regenMessage();
});
$("#grid_resolution").change(function (e) {
......@@ -273,6 +303,14 @@ var module_nicho = (function () {
});
$("#disease_selected").change(function (e) {
_VERBOSE ? console.log("Cambia enfermedad") : _VERBOSE;
// No es necesario regenerar resultados
_regenMessage();
});
// checkbox que se activa cuando se desea realizar el proceso de validación. (Proceso de validación todavia no implementado)
$("#chkApriori").click(function (event) {
......@@ -425,8 +463,14 @@ var module_nicho = (function () {
var region = _REGION_SELECTED;
var disease = _DISEASE_SELECTED;
var agent = _AGENT_SELECTED
var groupDatasetTotal = _componente_target.getGroupDatasetTotal()
console.log(groupDatasetTotal)
if(groupDatasetTotal.length == 0){
......@@ -464,13 +508,15 @@ var module_nicho = (function () {
var grid_res = $("#grid_resolution").val();
var footprint_region = parseInt($("#footprint_region_select").val());
var disease = $("#disease_selected").val();
var agent = $("#agent_selected").val();
// _map_module_nicho.loadD3GridMX(val_process, grid_res, footprint_region, _taxones);
_map_module_nicho.busca_especie_grupo(_taxones, footprint_region, val_process, grid_res);
});
_map_module_nicho.busca_especie_grupo(_taxones, 1, val_process, grid_res, "nicho" , disease, agent);
});
$("#show_gen").click(function (e) {
......@@ -518,6 +564,10 @@ var module_nicho = (function () {
// data_link.grid_res = parseInt($("#grid_resolution").val());
data_link.grid_res = $("#grid_resolution").val();
data_link.footprint_region = $("#footprint_region_select").val();
data_link.disease = $("#disease_selected").val();
data_link.grid_agent = $("#agent_selected").val();
data_link.discardedFilterids = _map_module_nicho.get_discardedPoints().values().map(function (value) {
return value.feature.properties.gridid
......@@ -555,10 +605,15 @@ var module_nicho = (function () {
console.log("source")
_REGION_SELECTED = ($("#footprint_region_select").val() !== null && $("#footprint_region_select").val() !== undefined) ? parseInt($("#footprint_region_select").val()) : _REGION_SELECTED;
_DISEASE_SELECTED = ($("#disease_selected").val() !== null && $("#disease_selected").val() !== undefined) ? parseInt($("#disease_selected").val()) : _DISEASE_SELECTED;
_AGENT_SELECTED = ($("#agent_selected").val() !== null && $("#agent_selected").val() !== undefined) ? parseInt($("#agent_selected").val()): _AGENT_SELECTED;
_GRID_RES = $("#grid_resolution").val();
console.log("REGION_SELECTED: " + _REGION_SELECTED);
console.log("_GRID_RES: " + _GRID_RES);
console.log("_DISEASE_SELECTED" + _DISEASE_SELECTED);
console.log("_AGENT_SELECTED" + _AGENT_SELECTED);
console.log("Term: " + request.term);
$.ajax({
......@@ -608,7 +663,7 @@ var module_nicho = (function () {
jQuery(function(){
jQuery('#date_timepicker_start').datetimepicker({
scrollInput : false,
format:'Y-m-d',
format:'Yyyy',
onShow:function( ct ){
this.setOptions({
maxDate:jQuery('#date_timepicker_end').val()?jQuery('#date_timepicker_end').val():false
......@@ -799,6 +854,10 @@ var module_nicho = (function () {
var region = _json_config.region ? parseInt(_json_config.region) : 1;
var disease = _json_config.disease ? parseInt(_json_config.disease) : 1;
var agente = _json_config.agente ? parseInt(_json_config.agent) : 1;
// var rango_fechas = minFec != undefined && maxFec != undefined ? [minFec, maxFec] : undefined;
// recover deleted items
......@@ -826,7 +885,7 @@ var module_nicho = (function () {
}
// _procesaValoresEnlace(sfilters, filters, chkVal, chkPrb, chkApr, chkFec, chkOcc, rango_fechas, chkFosil, gridRes, region, map_dPoints, chkValTemp);
_procesaValoresEnlace(sfilters, filters, chkVal, chkPrb, chkApr, chkFec, chkOcc, minFec, maxFec, minFecVal, maxFecVal, chkFosil, gridRes, region, map_dPoints, chkValTemp);
_procesaValoresEnlace(sfilters, filters, chkVal, chkPrb, chkApr, chkFec, chkOcc, minFec, maxFec, minFecVal, maxFecVal, chkFosil, gridRes, region, disease, agente, map_dPoints, chkValTemp);
$("#show_gen").css('visibility', 'hidden');
......@@ -936,7 +995,7 @@ var module_nicho = (function () {
* @param {integer} gridRes - Resolución de la malla para ser considerado en los cálculos
*/
// function _procesaValoresEnlace(subgroups_target, subgroups, chkVal, chkPrb, chkApr, chkFec, chkOcc, rango_fechas, chkFosil, gridRes, region, map_dPoints, chkValTemp) {
function _procesaValoresEnlace(subgroups_target, subgroups, chkVal, chkPrb, chkApr, chkFec, chkOcc, minFec, maxFec, minFecVal, maxFecVal, chkFosil, gridRes, region, map_dPoints, chkValTemp) {
function _procesaValoresEnlace(subgroups_target, subgroups, chkVal, chkPrb, chkApr, chkFec, chkOcc, minFec, maxFec, minFecVal, maxFecVal, chkFosil, gridRes, region, disease, agente, map_dPoints, chkValTemp) {
_VERBOSE ? console.log("_procesaValoresEnlace") : _VERBOSE;
......@@ -1019,6 +1078,12 @@ var module_nicho = (function () {
$('#footprint_region_select option[value=' + region + ']').attr('selected', 'selected');
$('#disease_selected option[value=' + disease + ']').attr('selected, selected');
$('#agent_selected option[value=' + agente + ']').attr('selected, selected');
console.log(subgroups_target)
console.log(subgroups)
......@@ -1170,9 +1235,14 @@ var module_nicho = (function () {
var mapa_prob = $("#chkMapaProb").is(':checked');
var grid_res = $("#grid_resolution").val();
var footprint_region = parseInt($("#footprint_region_select").val());
var disease = $("#disease_selected").val();
var agent = $("#agent_selected").val();
console.log("grid_res: " + grid_res);
console.log("footprint_region: " + footprint_region);
console.log("disease" + disease);
console.log("agent"+ agent);
var fossil = $("#chkFosil").is(':checked');
......@@ -1206,7 +1276,7 @@ var module_nicho = (function () {
// Falta agregar la condición makesense.
// Cuando se realiza una consulta por region seleccioanda se verica que la especie objetivo se encuentre dentro de esta area
_res_display_module_nicho.refreshData(num_items, val_process, slider_value, min_occ, mapa_prob, rango_fechas, chkFecha, fossil, grid_res, footprint_region, val_process_temp);
_res_display_module_nicho.refreshData(num_items, val_process, slider_value, min_occ, mapa_prob, rango_fechas, chkFecha, fossil, grid_res, footprint_region, disease, agent, val_process_temp);
}
......
......@@ -2776,9 +2776,13 @@ var res_display_module = (function (verbose, url_zacatuche) {
// console.log(data_body_request)
if(isdeletecell){
//let query = 'query{occurrences_by_taxon_' + nodo + '(query: "nombreenfermedad = \''+ _DISEASE_SELECTED + '\' AND '+ _PARENT_FIELD.toLowerCase() +' = \'' + _LABEL_VALUE +'\' AND longituddecimal ='+ long +' AND latituddecimal = ' + lat + '"){epitetoespecifico reino aniocolecta genero localidad sexo individuosinfectados gridid_'+ _grid_res + '}}'
fetch(_url_zacatuche + "/niche/especie/getIDCellFromCoordinates", {
if(isdeletecell){
fetch(_url_zacatuche + "/niche/especie/getIDCellFromCoordinates", {
method: "POST",
body: JSON.stringify(data_body_request),
headers: {
......@@ -2787,6 +2791,8 @@ var res_display_module = (function (verbose, url_zacatuche) {
})
.then(resp => resp.json())
.then(respuesta => {
console.log(_taxones)
console.log(respuesta.data)
if (respuesta.ok) {
......@@ -2820,42 +2826,31 @@ var res_display_module = (function (verbose, url_zacatuche) {
}
else{
fetch(_url_zacatuche + "/niche/especie/getCellOcurrences", {
method: "POST",
body: JSON.stringify(data_body_request),
headers: {
"Content-Type": "application/json"
}
})
.then(resp => resp.json())
.then(respuesta => {
// if (_AGENT_SELECTED == 'Hospederos')
// var _url = 'http://10.90.0.42:4006/graphql/hospederos/'
// else if (_AGENT_SELECTED == 'Patogenos')
// var _url = "http://10.90.0.42:4007/graphql/patogenos/"
// else
// var _url = "http://10.90.0.42:4008/graphql/vectores/"
var _url = "https://covid19.c3.unam.mx/gateway/api/nodes/"
if (respuesta.ok) {
let nodo = _AGENT_SELECTED.toLowerCase()
var data = respuesta.data;
let query = 'query{occurrences_by_taxon_' + nodo + '(query: "nombreenfermedad = \''+ _DISEASE_SELECTED + '\' AND '+ _PARENT_FIELD.toLowerCase() +' = \'' + _LABEL_VALUE +'\' AND longituddecimal ='+ long +' AND latituddecimal = ' + lat + '"){epitetoespecifico reino aniocolecta genero localidad sexo individuosinfectados gridid_'+ grid_res + '}}'
console.log(query)
_VERBOSE ? console.log(data) : _VERBOSE;
if (data.length > 0) {
var htmltable = _createOccTableFromData(data);
if (htmltable === "")
return;
_map_module_nicho.showPopUp(htmltable, [lat, long], true);
$.ajax({
method: "POST",
url: _url,
contentType: "application/json",
data: JSON.stringify({query: query}),
success: function (resp) {
console.log(resp)
}
}
$('#map2').loading('stop');
})
.catch(err => {
$('#map2').loading('stop');
_VERBOSE ? console.log("error: " + err) : _VERBOSE;
});
})
}
......
var _PARENT_FIELD = "";
var _LABEL_VALUE = "";
var _AGENT_SELECTED = "";
/**
* Módulo variable, utilizado para crear y gestionar los selectores de grupos de variables en nicho ecológico y comunidad ecológica.
......@@ -34,11 +37,16 @@ var variable_module = (function (verbose, url_zacatuche) {
var _toastr = toastr;
var _tipo_modulo;
var _MODULO_COMUNIDAD = 1;
var _available_variables = [];
var _REGION_SELECTED = 1;
var _REGION_SELECTED = 1
var _GRID_RES = "state";
// var _AGENT_SELECTED = "hospedero";
// var _PARENT_FIELD = "";
// var _LABEL_VALUE = "";
// var map_taxon = new Map()
// map_taxon.set("reino", "kingdom");
......@@ -64,7 +72,7 @@ var variable_module = (function (verbose, url_zacatuche) {
* @function getVarSelArray
* @public
* @memberof! table_module
*
*
*/
function getVarSelArray() {
return _var_sel_array;
......@@ -76,7 +84,7 @@ var variable_module = (function (verbose, url_zacatuche) {
* @function getSelectorVaribles
* @public
* @memberof! table_module
*
*
*/
function getSelectorVaribles() {
return _selectors_created;
......@@ -90,7 +98,7 @@ var variable_module = (function (verbose, url_zacatuche) {
* @function VariableSelector
* @public
* @memberof! table_module
*
*
* @param {String} parent - Id del contenedor del selector de variables
* @param {String} id - Id del selector de variables
* @param {String} title - Título del selector de variables desplegado en la parte superior
......@@ -99,12 +107,13 @@ var variable_module = (function (verbose, url_zacatuche) {
// se comentan variables topograficas por expansión de terreno
var tags = abio_tab ? ['a_taxon', 'a_raster'] : ['a_taxon'];
var tags = abio_tab ? ['a_taxon', 'a_raster', 'a_socio'] : ['a_taxon'];
var sp_items = ['a_item_reino', 'a_item_phylum', 'a_item_clase', 'a_item_orden', 'a_item_familia', 'a_item_genero','a_item_especie'];
var sp_parent_field = ['reinovalido', 'phylumdivisionvalido', 'clasevalida', 'ordenvalido', 'familiavalida', 'generovalido','especieepiteto'];
var sp_data_field = ['phylumdivisionvalido', 'clasevalida', 'ordenvalido', 'familiavalida', 'generovalido', 'especieepiteto']; //'especievalidabusqueda'
var sp_items = [ 'a_item_clase', 'a_item_orden', 'a_item_familia', 'a_item_genero','a_item_especie'];
var sp_parent_field = [ 'clase', 'orden', 'familia', 'genero','epitetoespecifico','epitetoinfraespecifico'];
var sp_data_field = ['clase', 'orden', 'familia', 'genero','epitetoespecifico','epitetoinfraespecifico']; //'especievalidabusqueda'
var NUM_ABIO = 20;
var NIVEL_REINO = 2
var NIVEL_PHYLUM = 3
......@@ -140,7 +149,314 @@ var variable_module = (function (verbose, url_zacatuche) {
// return self.taxones;
// }
self.getTreeTarget = function(){
_VERBOSE ? console.log("self.getTreeTarget") : _VERBOSE;
$("#agent_selected").change(function() {
let var_obj = $(this).val();
let diseases = document.getElementById("disease_selected");
switch (var_obj){
case "Hospederos":
fetch("https://covid19.c3.unam.mx/gateway/api/nodes/",{
method: "POST",
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({ query: 'query { get_diseases_hospederos {name}}'}),
})
.then(res => res.json())
.then((function(resp){
console.log(resp);
let data = resp ["data"]
let disease = data["get_diseases_hospederos"]
var select = document.getElementById("disease_selected")
$('select option[value="dis_default"]').attr("selected",true);
try {
let actual_modifiers =
$(".disease_opt").remove();
} catch (error) {
console.log("no diseases")
}
for (let index = 0; index < disease.length; index++){
console.log(disease[index]["name"])
var opt = document.createElement('option');
opt.setAttribute("class", "disease_opt")
opt.value = disease[index]["name"];
opt.innerHTML = disease[index]["name"];
select.append(opt);
}
}));
break;
case "Vectores":
fetch("https://covid19.c3.unam.mx/gateway/api/nodes/",{
method: "POST",
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({ query: 'query { get_diseases_vectores {name}}'}),
})
.then(res => res.json())
.then((function(resp){
console.log(resp);
let data = resp ["data"]
let disease = data["get_diseases_vectores"]
var select = document.getElementById("disease_selected")
$('select option[value="dis_default"]').attr("selected",true);
try {
let actual_modifiers =
$(".disease_opt").remove();
} catch (error) {
console.log("no diseases")
}
for (let index = 0; index < disease.length; index++){
console.log(disease[index]["name"])
var opt = document.createElement('option');
opt.setAttribute("class", "disease_opt")
opt.value = disease[index]["name"];
opt.innerHTML = disease[index]["name"];
select.append(opt);
}
}));
break;
case "Patogenos":
fetch("https://covid19.c3.unam.mx/gateway/api/nodes/",{
method: "POST",
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({ query: 'query { get_diseases_patogenos {name}}'}),
})
.then(res => res.json())
.then((function(resp){
console.log(resp);
let data = resp ["data"]
let disease = data["get_diseases_patogenos"]
var select = document.getElementById("disease_selected")
$('select option[value="dis_default"]').attr("selected",true);
try {
let actual_modifiers =
$(".disease_opt").remove();
} catch (error) {
console.log("no diseases")
}
for (let index = 0; index < disease.length; index++){
console.log(disease[index]["name"])
var opt = document.createElement('option');
opt.setAttribute("class", "disease_opt")
opt.value = disease[index]["name"];
opt.innerHTML = disease[index]["name"];
select.append(opt);
}
}));
break;
default:
break;
}
});
$('#disease_selected').change(function(e){
var agent_selected = $('#agent_selected').val()
var disease_text_selected = $("#disease_selected option:selected").text();
var _url = "https://covid19.c3.unam.mx/gateway/api/nodes/"
let nodo = agent_selected.toLowerCase()
var query = "query{occurrences_by_taxon_"+ nodo + "(query: \"nombreenfermedad='"+ disease_text_selected +"'\"){reino phylum clase orden familia genero nombrecientifico}}"
console.log(' =>>>>>>>>>>>>>>>>>>>>>>>>> ')
console.log(query)
$.ajax({
url: _url,
method: "POST",
contentType: "application/json",
data: JSON.stringify({query: query}),
success: function(resp){
console.log(' =>>>>>>>>>>>>>>>>>>>>>>>>> ')
console.log(resp)
console.log(' =>>>>>>>>>>>>>>>>>>>>>>>>> ')
if (agent_selected == 'Hospederos'){
var species = resp.data.occurrences_by_taxon_hospederos;
}
else if (agent_selected == 'Patogenos'){
var species = resp.data.occurrences_by_taxon_patogenos;
}else{
var species = resp.data.occurrences_by_taxon_vectores;
}
//data = [{ "id" : "animalia", "parent" : "#", "text" : "Animalia", 'state': {'opened': true, 'disabled' : true },
//"icon": "plugins/jstree/images/dna.png"}]
data = []
var species_non_repeat = [];
var species_names = [];
species.forEach(specie=>{
if(!species_names.includes(specie.nombrecientifico)){
species_names.push(specie.nombrecientifico);
species_non_repeat.push(specie);
}
})
var arbol = {}
var phylums = []
species.forEach(specie=>{
if(!phylums.includes(specie.phylum)){
phylums.push(specie.phylum);
data.push({ "id" : specie.phylum, "parent" : "#", "text" : specie.phylum, 'state': {'opened': true, 'selected': true},"icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 3, "type": 0}})
}
})
console.log(phylums)
var phylums_obj = {}
phylums.forEach(phylum=>{
var clases=[]
species.forEach(specie=>{
if(!clases.includes(specie.clase) && specie.phylum ===phylum){
clases.push(specie.clase);
data.push({ "id" : specie.clase , "parent" : specie.phylum , "text" : specie.clase, 'state': {'opened': false},
"icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 4, "type": 0}})
}
})
var clases_obj = {}
clases.forEach(clase=>{
var ordenes = []
species.forEach(specie=>{
if(!ordenes.includes(specie.orden) && specie.clase === clase){
ordenes.push(specie.orden);
data.push({ "id" : specie.orden , "parent" : specie.clase , "text" : specie.orden,'state': {'opened': false},
"icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 5, "type": 0}})
}
})
var ordenes_obj={}
ordenes.forEach(orden=>{
var familias = []
species.forEach(specie=>{
if(!familias.includes(specie.familia) && specie.orden === orden){
familias.push(specie.familia);
data.push({ "id" : specie.familia , "parent" : specie.orden , "text" : specie.familia, 'state': {'opened': false},
"icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 6, "type": 0}})
}
})
var familias_obj={}
familias.forEach(familia=>{
var generos = []
species.forEach(specie=>{
if(!generos.includes(specie.genero) && specie.familia === familia){
generos.push(specie.genero);
data.push({ "id" : specie.genero , "parent" : specie.familia , "text" : specie.genero, 'state': {'opened': false},
"icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 7, "type": 0}})
}
})
var generos_obj ={}
generos.forEach(genero=>{
var nombrescientificos=[]
species.forEach(specie=>{
if(!nombrescientificos.includes(specie.nombrecientifico) && specie.genero === genero){
nombrescientificos.push(specie.nombrecientifico);
data.push({ "id" : specie.nombrecientifico , "parent" : specie.genero , "text" : specie.nombrecientifico, 'state': {'opened': false},
"icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 8, "type": 0}})
}
})
generos_obj[genero] = nombrescientificos
})
familias_obj[familia]=generos_obj
})
ordenes_obj[orden] = familias_obj
})
clases_obj[clase] = ordenes_obj
})
phylums_obj[phylum] = clases_obj
arbol['Animalia']=phylums_obj
})
console.log(' =>>>>>>>>>>>>>>>>>>>>>>>>> ')
console.log("arbol es")
console.log(data)
console.log(' =>>>>>>>>>>>>>>>>>>>>>>>>> ')
$('#jstree_variables_species_target').jstree("destroy").empty();
$('#jstree_variables_species_target').on('open_node.jstree', self.getTreeVar);
$("#jstree_variables_species_target").on('changed.jstree', self.getChangeTreeVar);
$("#jstree_variables_species_target").on('loaded.jstree', self.loadNodes);
var icon = "plugins/jstree/images/dna.png"
$('#jstree_variables_species_target').jstree({
'plugins': ["wholerow", "checkbox"],
'core': {
'data': data,
'themes': {
'name': 'proton',
'responsive': true
},
'check_callback': true
}
});
console.log(' =>>>>>>>>>>>>>>>>>>>>>>>>> ')
console.log(Object.keys(arbol['Animalia']))
console.log(' =>>>>>>>>>>>>>>>>>>>>>>>>> ')
Object.keys(arbol["Animalia"]).forEach(phylum=>{
console.log(' =>>>>>>>>>>>>>>>>>>>>>>>>> ')
console.log(phylum)
Object.keys(arbol["Animalia"][phylum]).forEach(clase=>{
console.log(" " + clase)
Object.keys(arbol["Animalia"][phylum][clase]).forEach(orden=>{
console.log(" " + orden)
Object.keys(arbol["Animalia"][phylum][clase][orden]).forEach(familia=>{
console.log(" " + familia)
Object.keys(arbol["Animalia"][phylum][clase][orden][familia]).forEach(genero=>{
console.log(" " + genero)
arbol["Animalia"][phylum][clase][orden][familia][genero].forEach(nombre=>{
console.log(" " + nombre)
})
})
})
})
})
})
}
})
console.log(' =>>>>>>>>>>>>>>>>>>>>>>>>> ')
})
}
self.getTreeTarget()
// Evento generado cuando se selecciona un grupo de variables climáticas, realiza la carga del árbol de selección del grupo seleccionado.
self.loadTreeVarRaster = function () {
......@@ -149,16 +465,16 @@ var variable_module = (function (verbose, url_zacatuche) {
if(!abio_tab) return;
_VERBOSE ? console.log("self.loadTreeVarRaster") : _VERBOSE;
var text_raster = _iTrans.prop('lb_raster');
var var_selected = "root_bioclim";
var level_root = 0;
var level_vartree = 1;
console.log("val: " + $("#footprint_region_select").val());
console.log("_REGION_SELECTED: " + _REGION_SELECTED);
_REGION_SELECTED = ($("#footprint_region_select").val() !== null && $("#footprint_region_select").val() !== undefined) ? parseInt($("#footprint_region_select").val()) : _REGION_SELECTED;
_GRID_RES = $("#grid_resolution").val();
......@@ -185,13 +501,13 @@ var variable_module = (function (verbose, url_zacatuche) {
"id": var_selected,
attr: {"bid": var_selected, "parent": text_raster, "level": level_root, "type": _TYPE_CLIMA},
'state': {'opened': true, 'disabled' : true },
"icon": "plugins/jstree/dist/themes/default/throbber.gif"
"icon": "plugins/jstree/images/dna.png"
}];
$("#jstree_variables_bioclim_" + id).jstree({
'plugins': ["wholerow", "checkbox"],
'core': {
'data': tree_reinos,
'data': data,
'themes': {
'name': 'proton',
'responsive': true
......@@ -223,12 +539,12 @@ var variable_module = (function (verbose, url_zacatuche) {
"children": default_son
};
// console.log("nodes-loadTreeVarRaster ");
// console.log(newNode);
console.log("nodes-loadTreeVarRaster --------------------");
console.log(newNode);
$('#jstree_variables_bioclim_' + id).jstree("create_node", current_node, newNode, 'last', false, false);
}
$("#jstree_variables_bioclim_" + id).jstree(true).set_icon(current_node.id, "./plugins/jstree/images/dna.png");
// $("#jstree_variables_bioclim_" + id).jstree(true).set_icon(current_node.id, "./plugins/jstree/images/dna.png");
});
......@@ -238,7 +554,6 @@ var variable_module = (function (verbose, url_zacatuche) {
}
self.getTreeVarRaster = function (e, d) {
//evita la petición cuando no se requieren las variables climáticas
......@@ -265,14 +580,14 @@ var variable_module = (function (verbose, url_zacatuche) {
var max_level = 3;
$("#jstree_variables_bioclim_" + id).jstree(true).set_icon(d.node.id, "./plugins/jstree/dist/themes/default/throbber.gif");
$("#jstree_variables_bioclim_" + id).jstree(true).set_icon(d.node.id, "./plugins/jstree/images/dna.png");
_REGION_SELECTED = ($("#footprint_region_select").val() !== null && $("#footprint_region_select").val() !== undefined) ? parseInt($("#footprint_region_select").val()) : _REGION_SELECTED;
_GRID_RES = $("#grid_resolution").val();
console.log("REGION_SELECTED: " + _REGION_SELECTED);
console.log("_GRID_RES: " + _GRID_RES);
current_id = current_id.replace(/#/g,'').replace(/\(/g,'').replace(/\)/g,'')
console.log("current_id: " + current_id);
// console.log("id: " + id);
......@@ -347,14 +662,14 @@ var variable_module = (function (verbose, url_zacatuche) {
"children": default_son
};
}
}
else {
console.log(data[i].label)
// eliminacaraacteres especiales y espacios en blanco
var lb = data[i].label.replace(/[^a-zA-Z0-9]/g, "").replace(/ /g,'').replace(/#/g,'')
// console.log(_iTrans.prop(lb))
newNode = {
......@@ -369,15 +684,15 @@ var variable_module = (function (verbose, url_zacatuche) {
}
}
$('#jstree_variables_bioclim_' + id).jstree("create_node", current_node, newNode, 'last', false, false);
}
$("#jstree_variables_bioclim_" + id).jstree(true).delete_node(d.node.children[0]);
$("#jstree_variables_bioclim_" + id).jstree(true).set_icon(current_node.id, "./plugins/jstree/images/dna.png");
......@@ -402,7 +717,7 @@ var variable_module = (function (verbose, url_zacatuche) {
.text(_iTrans.prop(title))
.appendTo($("#" + parent));
}
// div contenedor del cuerpo de la sección grupo de variables, puede ser del 80% de la altura de la página o de 300px en su tamaño reducido
var container_height = reduced_height ? "container_60p" : "container_80p"
......@@ -428,20 +743,21 @@ var variable_module = (function (verbose, url_zacatuche) {
.addClass('nav nav-tabs nav-variables')
.appendTo(nav_selection);
// sea gregan los tabs disponibles
// sea agregan los tabs disponibles
$.each(tags, function (i) {
var name_class = 'nav-variables';
if (i == 0) {
name_class = 'active nav-variables';
}
if(id=="fuente"){
var li = $('<li/>')
.addClass(name_class)
.appendTo(nav_items)
.click(function (e) {
$('.nav-tabs a[href="' + e.target.getAttribute('href') + '"]').tab('show');
e.preventDefault();
});
});}
var aaa = $('<a/>')
.attr('id', tags[i] + "_" + id)
......@@ -478,10 +794,12 @@ var variable_module = (function (verbose, url_zacatuche) {
.appendTo(tab_content);
// div que contiene el dropdown-button de tipos taxonomicos y textfiled para insertar valores
if (id === "fuente"){
var drop_item = $('<div/>')
.attr('id', 'tuto_taxon_sp_' + id)
.addClass('input-group dropdown_group')
.appendTo(tab_pane);
}
var btn_div = $('<div/>')
.addClass('input-group-btn')
......@@ -523,7 +841,7 @@ var variable_module = (function (verbose, url_zacatuche) {
varfield = e.target.text;
_VERBOSE ? console.log(varfield) : _VERBOSE;
_VERBOSE ? console.log(self.varfilter_selected) : _VERBOSE;
$("#btn_variable" + "_" + id).text(varfield + " ");
$("#btn_variable" + "_" + id).append('<span class="caret"></span>');
......@@ -544,6 +862,9 @@ var variable_module = (function (verbose, url_zacatuche) {
});
var input_sp = $('<input/>')
.attr('id', 'text_variable' + "_" + id)
.attr('type', 'text')
......@@ -552,91 +873,551 @@ var variable_module = (function (verbose, url_zacatuche) {
.addClass('form-control')
.autocomplete({
source: function (request, response) {
console.log(varfield)
_VERBOSE ? console.log($("#footprint_region_select").val()) : _VERBOSE;
_REGION_SELECTED = ($("#footprint_region_select").val() !== null && $("#footprint_region_select").val() !== undefined) ? parseInt($("#footprint_region_select").val()) : _REGION_SELECTED;
_GRID_RES = $("#grid_resolution").val();
switch(varfield){
case "Clase":
console.log("clase valida");
var query = "query{all_snib_covariables(limit: 1, filter: \" clasevalida LIKE '" + request.term.charAt(0).toUpperCase()+ request.term.slice(1) + "%'\"){clasevalida}} "
var el = "clasevalida "
break;
case "Orden":
console.log("orden valido");
var query = "query{all_snib_covariables(limit: 1, filter: \" ordenvalido LIKE '" + request.term.charAt(0).toUpperCase()+ request.term.slice(1) + "%'\"){ordenvalido}} "
var el = "ordenvalido "
break;
case "Familia":
console.log("familia valida");
var query = "query{all_snib_covariables(limit: 1, filter: \" familiavalida LIKE '" + request.term.charAt(0).toUpperCase()+ request.term.slice(1) + "%'\"){familiavalida}} "
var el = "familiavalida "
break;
case "Género":
console.log("genero valido");
var query = "query{all_snib_covariables(limit: 1, filter: \" generovalido LIKE '" + request.term.charAt(0).toUpperCase()+ request.term.slice(1) + "%'\"){generovalido}} "
var el = "generovalido "
break;
default:
console.log("Especie ")
var query = "query{all_snib_covariables(limit: 1, filter: \" especievalida LIKE '" + request.term.charAt(0).toUpperCase()+ request.term.slice(1) + "%'\"){especievalida}} "
var el = "especievalida "
break;
}
console.log("REGION_SELECTED: " + _REGION_SELECTED);
console.log("_GRID_RES: " + _GRID_RES);
_VERBOSE ? console.log($("#footprint_region_select").val()) : _VERBOSE;
_REGION_SELECTED = ($("#footprint_region_select").val() !== null && $("#footprint_region_select").val() !== undefined) ? parseInt($("#footprint_region_select").val()) : _REGION_SELECTED;
_GRID_RES = $("#grid_resolution").val();
var _url = "https://covid19.c3.unam.mx/gateway/api/nodes/"
let lst = []
console.log(query)
console.log("---------*********-----------")
console.log(el)
$.ajax({
url: _url_zacatuche + "/niche/especie/getEntList",
dataType: "json",
type: "post",
data: {
searchStr: request.term,
nivel: self.varfilter_selected[1],
source: 0, // source para saber si viene de objetivo o el target
footprint_region: _REGION_SELECTED,
grid_res: _GRID_RES
},
method: "POST",
url: _url,
contentType: "application/json",
data: JSON.stringify({query: query}),
success: function (resp) {
response($.map(resp.data, function (item) {
_VERBOSE ? console.log(item) : _VERBOSE;
console.log(self.varfilter_selected[1]);
return{
label: item[self.varfilter_selected[1]],
id: item[self.varfilter_selected[1]]
};
let au = resp.data.all_snib_covariables
console.log(au[0])
response($.map(resp.data.all_snib_covariables, function (item) {
var arrayObj = Object.keys(au[0]).map(function(key){
return au[0][key];
});
console.log(arrayObj)
for (let i = 0; i < arrayObj.length; i++) {
var opt = arrayObj[i]
_VERBOSE ? console.log(opt) : _VERBOSE;
console.log(self.varfilter_selected[1]);
return {
label: opt,
id: opt
};
}
}));
}
});
})
},
minLength: 2,
minLength: 3,
change: function (event, ui) {
// if (!ui.item) {
// $("#text_variable" + "_" + id).val("");
// }
if (!ui.item) {
$("#text_variable" + "_" + id).val("");
}
},
select: function (event, ui) {
console.log(ui);
$('#jstree_variables_species_' + id).jstree("destroy").empty();
$('#jstree_variables_species_' + id).on('open_node.jstree', self.getTreeVar);
$("#jstree_variables_species_" + id).on('changed.jstree', self.getChangeTreeVar);
$("#jstree_variables_species_" + id).on('loaded.jstree', self.loadNodes);
self.value_vartree = ui.item.id;
self.field_vartree = self.varfilter_selected[0];
self.parent_field_vartree = self.varfilter_selected[1];
self.level_vartree = self.varfilter_selected[2];
console.log(ui.item.id + " seleccionado");
console.log(self.varfilter_selected[1])
let lst = ["clasevalida ", "ordenvalido ", "familiavalida ", "generovalido ", "especievalida " ]
if(self.varfilter_selected[1] === "clase"){
var button_val = lst[0]
var query = "query{all_snib_covariables(limit:2000, filter:\""+ button_val +" ='"+ ui.item.id +"'\"){clasevalida ordenvalido familiavalida generovalido especievalida}}"
$.ajax({
url: "https://covid19.c3.unam.mx/gateway/api/nodes/",
method: "POST",
contentType: "application/json",
data: JSON.stringify({query: query}),
success: function(resp){
var sel = resp.data.all_snib_covariables
console.log(sel)
var data_cov=[]
var species_names = [];
sel.forEach(specie=>{
if(!species_names.includes(specie.especievalida)){
species_names.push(specie.especievalida)
}
})
var arbol = {}
var clases = []
sel.forEach(specie=>{
var ordenes=[]
if(!clases.includes(specie.clasevalida)){
clases.push(specie.clasevalida)
data_cov.push({ "id" : specie.clasevalida, "parent" : "#", "text" : specie.clasevalida, 'state': {'opened': true, 'selected': true},"icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 5, "type": 0}})
}
})
var clases_obj = {}
clases.forEach(clase=>{
var ordenes = []
sel.forEach(specie=>{
if(!ordenes.includes(specie.ordenvalido) && specie.clasevalida === clase){
ordenes.push(specie.ordenvalido)
data_cov.push({ "id" : specie.ordenvalido , "parent" : specie.clasevalida , "text" : specie.ordenvalido,'state': {'opened': false}, "icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 6, "type": 0}})
}
})
var ordenes_obj = {}
ordenes.forEach(orden=>{
var familias=[]
sel.forEach(specie=>{
if(!familias.includes(specie.familiavalida) && specie.ordenvalido === orden){
familias.push(specie.familiavalida)
data_cov.push({ "id" : specie.familiavalida , "parent" : specie.ordenvalido , "text" : specie.familiavalida, 'state': {'opened': false}, "icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 7, "type": 0}})
}
})
var familias_obj={}
familias.forEach(familia=>{
var generos = []
sel.forEach(specie=>{
if(!generos.includes(specie.generovalido)&& specie.familiavalida === familia){
generos.push(specie.generovalido)
data_cov.push({ "id" : specie.generovalido , "parent" : specie.familiavalida , "text" : specie.generovalido, 'state': {'opened': false}, "icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 8, "type": 0}})
}
})
var generos_obj = {}
generos.forEach(genero=>{
var especievalida = []
sel.forEach(specie=>{
if(!especievalida.includes(specie.especievalida) && specie.generovalido === genero){
especievalida.push(specie.especievalida);
data_cov.push({ "id" : specie.especievalida , "parent" : specie.generovalido , "text" : specie.especievalida, 'state': {'opened': false}, "icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 9, "type": 0}})
}
})
generos_obj[genero] = especievalida
})
familias_obj[familia]=generos_obj
})
ordenes_obj[orden] = familias_obj
})
clases_obj[clase]=ordenes_obj
console.log(clases_obj)
})
console.log(data_cov)
console.log("jstree_variables_species_fuente")
$('#jstree_variables_species_' + id).jstree("destroy").empty();
$('#jstree_variables_species_' + id).on('open_node.jstree', self.getTreeVar);
$("#jstree_variables_species_" + id).on('changed.jstree', self.getChangeTreeVar);
$("#jstree_variables_species_" + id).on('loaded.jstree', self.loadNodes);
self.value_vartree = ui.item.id;
self.field_vartree = self.varfilter_selected[0];
self.parent_field_vartree = self.varfilter_selected[1];
self.level_vartree = self.varfilter_selected[2];
_VERBOSE ? console.log("nivel") : _VERBOSE;
_VERBOSE ? console.log(self.level_vartree) : _VERBOSE;
var icon = parseInt(self.level_vartree) === 8 ? "plugins/jstree/images/dna.png" : "./plugins/jstree/images/dna.png"
_VERBOSE ? console.log(self.level_vartree) : _VERBOSE;
$('#jstree_variables_species_' + id).jstree({
'plugins': ["wholerow", "checkbox"],
'core': {
'data': data_cov,
'themes': {
'name': 'proton',
'responsive': true
},
'check_callback': true
}
});
}
})
}else if(self.varfilter_selected[1] === "orden"){
var button_val = lst[1]
var query = "query{all_snib_covariables(limit:2000, filter:\""+ button_val +" ='"+ ui.item.id +"'\"){ordenvalido familiavalida generovalido especievalida}}"
$.ajax({
url: "https://covid19.c3.unam.mx/gateway/api/nodes/",
method: "POST",
contentType: "application/json",
data: JSON.stringify({query: query}),
success: function(resp){
var sel = resp.data.all_snib_covariables
console.log(sel)
var data_cov=[]
var species_names = [];
sel.forEach(specie=>{
if(!species_names.includes(specie.especievalida)){
species_names.push(specie.especievalida)
}
})
console.log(species_names)
var ordenes = []
sel.forEach(specie=>{
if(!ordenes.includes(specie.ordenvalido)){
ordenes.push(specie.ordenvalido)
data_cov.push({ "id" : specie.ordenvalido, "parent" : "#", "text" : specie.ordenvalido, 'state': {'opened': true, 'selected': true},"icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 1, "type": 0}})
}
})
console.log("************ ordenes ************")
console.log(ordenes)
var ordenes_obj = {}
ordenes.forEach(orden=>{
var familias = []
sel.forEach(specie=>{
if(!familias.includes(specie.familiavalida) && specie.ordenvalido === orden){
familias.push(specie.familiavalida)
data_cov.push({ "id" : specie.familiavalida , "parent" : specie.ordenvalido , "text" : specie.familiavalida, 'state': {'opened': false}, "icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 2, "type": 0}})
}
})
var familias_obj = {}
familias.forEach(familia=>{
var generos = []
sel.forEach(specie=>{
if(!generos.includes(specie.generovalido) && specie.familiavalida === familia){
generos.push(specie.generovalido);
data_cov.push({ "id" : specie.generovalido , "parent" : specie.familiavalida , "text" : specie.generovalido, 'state': {'opened': false}, "icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 3, "type": 0}})
}
})
var generos_obj = {}
generos.forEach(genero=>{
var especievalida=[]
sel.forEach(specie=>{
if(!especievalida.includes(specie.especievalida) && specie.generovalido === genero){
especievalida.push(specie.especievalida)
data_cov.push({ "id" : specie.especievalida , "parent" : specie.generovalido , "text" : specie.especievalida, 'state': {'opened': false}, "icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 4, "type": 0}})
}
})
generos_obj[genero] = especievalida
})
familias_obj[familia] = generos_obj
})
ordenes_obj[orden]=familias_obj
})
console.log(ordenes_obj)
console.log(data_cov)
console.log("jstree_variables_species_fuente")
$('#jstree_variables_species_' + id).jstree("destroy").empty();
$('#jstree_variables_species_' + id).on('open_node.jstree', self.getTreeVar);
$("#jstree_variables_species_" + id).on('changed.jstree', self.getChangeTreeVar);
$("#jstree_variables_species_" + id).on('loaded.jstree', self.loadNodes);
self.value_vartree = ui.item.id;
self.field_vartree = self.varfilter_selected[0];
self.parent_field_vartree = self.varfilter_selected[1];
self.level_vartree = self.varfilter_selected[2];
_VERBOSE ? console.log("nivel") : _VERBOSE;
_VERBOSE ? console.log(self.level_vartree) : _VERBOSE;
var icon = parseInt(self.level_vartree) === 8 ? "plugins/jstree/images/dna.png" : "plugins/jstree/images/dna.png"
_VERBOSE ? console.log(self.level_vartree) : _VERBOSE;
$('#jstree_variables_species_' + id).jstree({
'plugins': ["wholerow", "checkbox"],
'core': {
'data': data_cov,
'themes': {
'name': 'proton',
'responsive': true
},
'check_callback': true
}
});
}
})
}else if(self.varfilter_selected[1] === "familia"){
var button_val = lst[2]
var query = "query{all_snib_covariables(limit:2000, filter:\""+ button_val +" ='"+ ui.item.id +"'\"){familiavalida generovalido especievalida}}"
$.ajax({
url: "https://covid19.c3.unam.mx/gateway/api/nodes/",
method: "POST",
contentType: "application/json",
data: JSON.stringify({query: query}),
success: function(resp){
var sel = resp.data.all_snib_covariables
console.log(sel)
var data_cov=[]
var species_names = [];
sel.forEach(specie=>{
if(!species_names.includes(specie.especievalida)){
species_names.push(specie.especievalida)
}
})
var familias=[];
sel.forEach(specie=>{
if(!familias.includes(specie.familiavalida)){
familias.push(specie.familiavalida)
data_cov.push({ "id" : specie.familiavalida , "parent" : "#" , "text" : specie.familiavalida, 'state': {'opened': false}, "icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 1, "type": 0}})
}
})
console.log("********** familias *************")
var familias_obj = {}
familias.forEach(familia=>{
var generos = []
sel.forEach(specie=>{
if(!generos.includes(specie.generovalido) && specie.familiavalida === familia){
generos.push(specie.generovalido)
data_cov.push({ "id" : specie.generovalido , "parent" : specie.familiavalida , "text" : specie.generovalido, 'state': {'opened': false}, "icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 2, "type": 0}})
}
})
var generos_obj = {}
generos.forEach(genero=>{
var especievalida=[]
sel.forEach(specie=>{
if(!especievalida.includes(specie.especievalida) && specie.generovalido === genero){
especievalida.push(specie.especievalida)
data_cov.push({ "id" : specie.especievalida , "parent" : specie.generovalido , "text" : specie.especievalida, 'state': {'opened': false}, "icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 3, "type": 0}})
}
})
generos_obj[genero] = especievalida
})
familias_obj[familia]=generos_obj
})
console.log(familias_obj)
console.log(data_cov)
console.log("jstree_variables_species_fuente")
$('#jstree_variables_species_' + id).jstree("destroy").empty();
$('#jstree_variables_species_' + id).on('open_node.jstree', self.getTreeVar);
$("#jstree_variables_species_" + id).on('changed.jstree', self.getChangeTreeVar);
$("#jstree_variables_species_" + id).on('loaded.jstree', self.loadNodes);
self.value_vartree = ui.item.id;
self.field_vartree = self.varfilter_selected[0];
self.parent_field_vartree = self.varfilter_selected[1];
self.level_vartree = self.varfilter_selected[2];
_VERBOSE ? console.log("nivel") : _VERBOSE;
_VERBOSE ? console.log(self.level_vartree) : _VERBOSE;
var icon = parseInt(self.level_vartree) === 8 ? "plugins/jstree/images/dna.png" : "plugins/jstree/images/dna.png"
_VERBOSE ? console.log(self.level_vartree) : _VERBOSE;
$('#jstree_variables_species_' + id).jstree({
'plugins': ["wholerow", "checkbox"],
'core': {
'data': data_cov,
'themes': {
'name': 'proton',
'responsive': true
},
'check_callback': true
}
});
}
})
}else if(self.varfilter_selected[1] === "genero"){
var button_val = lst[3]
var query = "query{all_snib_covariables(limit:2000, filter:\""+ button_val +" ='"+ ui.item.id +"'\"){generovalido especievalida}}"
$.ajax({
url: "https://covid19.c3.unam.mx/gateway/api/nodes/",
method: "POST",
contentType: "application/json",
data: JSON.stringify({query: query}),
success: function(resp){
var sel = resp.data.all_snib_covariables
console.log(sel)
var data_cov=[]
var species_names = [];
sel.forEach(specie=>{
if(!species_names.includes(specie.especievalida)){
species_names.push(specie.especievalida)
}
})
var generos = []
sel.forEach(specie=>{
if(!generos.includes(specie.generovalido)){
generos.push(specie.generovalido)
data_cov.push({ "id" : specie.generovalido , "parent" : "#" , "text" : specie.generovalido, 'state': {'opened': false}, "icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 1, "type": 0}})
}
})
console.log(generos)
var generos_obj = {}
generos.forEach(genero=>{
var especievalida = []
sel.forEach(specie=>{
if(!especievalida.includes(specie.especievalida) && specie.generovalido){
especievalida.push(specie.especievalida)
data_cov.push({ "id" : specie.especievalida , "parent" : specie.generovalido , "text" : specie.especievalida, 'state': {'opened': false}, "icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 8, "type": 0}})
}
})
generos_obj[genero]= especievalida
})
console.log(data_cov)
console.log("**********arbol**********")
console.log("jstree_variables_species_fuente")
$('#jstree_variables_species_' + id).jstree("destroy").empty();
$('#jstree_variables_species_' + id).on('open_node.jstree', self.getTreeVar);
$("#jstree_variables_species_" + id).on('changed.jstree', self.getChangeTreeVar);
$("#jstree_variables_species_" + id).on('loaded.jstree', self.loadNodes);
self.value_vartree = ui.item.id;
self.field_vartree = self.varfilter_selected[0];
self.parent_field_vartree = self.varfilter_selected[1];
self.level_vartree = self.varfilter_selected[2];
_VERBOSE ? console.log("nivel") : _VERBOSE;
_VERBOSE ? console.log(self.level_vartree) : _VERBOSE;
var icon = parseInt(self.level_vartree) === 8 ? "plugins/jstree/images/dna.png" : "plugins/jstree/images/dna.png"
_VERBOSE ? console.log(self.level_vartree) : _VERBOSE;
$('#jstree_variables_species_' + id).jstree({
'plugins': ["wholerow", "checkbox"],
'core': {
'data': data_cov,
'themes': {
'name': 'proton',
'responsive': true
},
'check_callback': true
}
});
}
})
}else{
var button_val = lst[4]
var query = "query{all_snib_covariables(limit:2000, filter:\""+ button_val +" ='"+ ui.item.id +"'\"){especievalida}}"
$.ajax({
url: "https://covid19.c3.unam.mx/gateway/api/nodes/",
method: "POST",
contentType: "application/json",
data: JSON.stringify({query: query}),
success: function(resp){
var sel = resp.data.all_snib_covariables
console.log(sel)
var data_cov = [{ "id" : "raiz" , "parent" :"#", "text" : "raiz", 'state': {'opened': false}, "icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 1, "type": 0}}]
var species_names = [];
sel.forEach(specie=>{
if(!species_names.includes(specie.especievalida)){
species_names.push(specie.especievalida)
data_cov.push(data_cov.push({ "id" : specie.especievalida , "parent" :"raiz", "text" : specie.especievalida, 'state': {'opened': false}, "icon": "plugins/jstree/images/dna.png", 'attr': {'nivel': 2, "type": 0}}))
}
})
console.log(data_cov)
console.log("**********arbol**********")
console.log("jstree_variables_species_fuente")
$('#jstree_variables_species_' + id).jstree("destroy").empty();
$('#jstree_variables_species_' + id).on('open_node.jstree', self.getTreeVar);
$("#jstree_variables_species_" + id).on('changed.jstree', self.getChangeTreeVar);
$("#jstree_variables_species_" + id).on('loaded.jstree', self.loadNodes);
// self.value_vartree = ui.item.id;
// self.field_vartree = self.varfilter_selected[0];
// self.parent_field_vartree = self.varfilter_selected[1];
// self.level_vartree = self.varfilter_selected[2];
// _VERBOSE ? console.log("nivel") : _VERBOSE;
// _VERBOSE ? console.log(self.level_vartree) : _VERBOSE;
var icon = parseInt(self.level_vartree) === 8 ? "plugins/jstree/images/dna.png" : "plugins/jstree/images/dna.png"
// _VERBOSE ? console.log(self.level_vartree) : _VERBOSE;
$('#jstree_variables_species_' + id).jstree({
'plugins': ["wholerow", "checkbox"],
'core': {
'data': data_cov,
'themes': {
'name': 'proton',
'responsive': true
},
'check_callback': true
}
});
}
})
}
console.log(query)
// $('#jstree_variables_species_' + id).jstree("destroy").empty();
// $('#jstree_variables_species_' + id).on('open_node.jstree', self.getTreeVar);
// $("#jstree_variables_species_" + id).on('changed.jstree', self.getChangeTreeVar);
// $("#jstree_variables_species_" + id).on('loaded.jstree', self.loadNodes);
// self.value_vartree = ui.item.id;
// self.field_vartree = self.varfilter_selected[0];
// self.parent_field_vartree = self.varfilter_selected[1];
// self.level_vartree = self.varfilter_selected[2];
// _VERBOSE ? console.log("nivel") : _VERBOSE;
_VERBOSE ? console.log(self.level_vartree) : _VERBOSE;
// _VERBOSE ? console.log(self.level_vartree) : _VERBOSE;
var icon = parseInt(self.level_vartree) === 8 ? "plugins/jstree/images/dna.png" : "plugins/jstree/dist/themes/default/throbber.gif"
// var icon = parseInt(self.level_vartree) === 8 ? "plugins/jstree/images/dna.png" : "plugins/jstree/dist/themes/default/throbber.gif"
// _VERBOSE ? console.log(self.level_vartree) : _VERBOSE;
var tree_reinos = [{
"text": self.value_vartree,
"id": "root",
"attr": {"nivel": self.level_vartree, "type": _TYPE_TAXON},
'state': {'opened': true},
"icon": icon
}];
$('#jstree_variables_species_' + id).jstree({
'plugins': ["wholerow", "checkbox"],
'core': {
'data': tree_reinos,
'themes': {
'name': 'proton',
'responsive': true
},
'check_callback': true
}
});
// var tree_reinos = [{
// "text": self.value_vartree,
// "id": "root",
// "attr": {"nivel": self.level_vartree, "type": _TYPE_TAXON},
// 'state': {'opened': true},
// "icon": icon
// }];
// $('#jstree_variables_species_' + id).jstree({
// 'plugins': ["wholerow", "checkbox"],
// 'core': {
// 'data': tree_reinos,
// 'themes': {
// 'name': 'proton',
// 'responsive': true
// },
// 'check_callback': true
// }
// });
}
......@@ -670,6 +1451,8 @@ var variable_module = (function (verbose, url_zacatuche) {
.addClass('btn btn-primary glyphicon glyphicon-plus pull-left no-mg-top')
.click(function (e) {
console.log('>>>>>>>>>>>>>> este es mi id ' + id)
self.addOtherGroup('jstree_variables_species_' + id, self.arrayVarSelected, 'Bio', 'treeAddedPanel_' + id, _TYPE_BIO);
$('#jstree_variables_species_' + id).jstree("destroy").empty();
$('#jstree_variables_species_' + id).off('open_node.jstree', self.getTreeVar);
......@@ -712,7 +1495,7 @@ var variable_module = (function (verbose, url_zacatuche) {
// .click(function (e) {
// console.log(self.groupDatasetTotal);
// // console.log(self.getVarSelArray());
// // console.log(self.getVarSelArray());
// if(self.groupDatasetTotal.length == 0){
// console.log("No species selected");
......@@ -723,7 +1506,7 @@ var variable_module = (function (verbose, url_zacatuche) {
// console.log(self.groupDatasetTotal);
// console.log(self.var_sel_array);
// $.each(self.groupDatasetTotal, function(index_i, grupo){
......@@ -731,7 +1514,7 @@ var variable_module = (function (verbose, url_zacatuche) {
// $.each(grupo.elements, function(index_j, sp_grupo){
// var array_sp = sp_grupo.label.split(">>");
// var temp_item = {};
......@@ -753,12 +1536,12 @@ var variable_module = (function (verbose, url_zacatuche) {
// $('#jstree_variables_species_' + id).off('open_node.jstree', self.getTreeVar);
// $("#jstree_variables_species_" + id).off('changed.jstree', self.getChangeTreeVar);
// $("#jstree_variables_species_" + id).off('ready.jstree', self.loadNodes);
// e.preventDefault();
// })
// .appendTo(tab_pane);
// .appendTo(tab_pane);
}
......@@ -829,7 +1612,9 @@ var variable_module = (function (verbose, url_zacatuche) {
// Es un evento generado cuando se realiza la carga del árbol de selección (jstree: https://www.jstree.com/) que contiene el selector de variables.
// Es un evento generado cuando se realiza la carga del árbol de selección (jstree: https://www.jstree.com/) que contiene el selector de variables.
self.loadNodes = function () {
_VERBOSE ? console.log("self.loadNodes") : _VERBOSE;
......@@ -851,27 +1636,45 @@ var variable_module = (function (verbose, url_zacatuche) {
_VERBOSE ? console.log(self.field_vartree) : _VERBOSE;
_VERBOSE ? console.log(self.value_vartree) : _VERBOSE;
_REGION_SELECTED = ($("#footprint_region_select").val() !== null && $("#footprint_region_select").val() !== undefined) ? parseInt($("#footprint_region_select").val()) : _REGION_SELECTED;
_GRID_RES = $("#grid_resolution").val();
_AGENT_SELECTED = $("#agent_selected").val();
console.log("REGION_SELECTED: " + _REGION_SELECTED);
console.log("_GRID_RES: " + _GRID_RES);
console.log("_AGENT_SELECTED" + _AGENT_SELECTED);
if (_AGENT_SELECTED == 'Hospederos')
var _url = 'http://10.90.0.42:4006/graphql/hospederos/'
else if (_AGENT_SELECTED == 'Patogenos')
var _url = "http://10.90.0.42:4007/graphql/patogenos/"
else
var _url = "http://10.90.0.42:4008/graphql/vectores/"
let nodo = _AGENT_SELECTED.toLowerCase()
let field_t = field_r.normalize('NFD').replace(/[\u0300-\u036f]/g,"");
let query = 'query{occurrences_by_taxon_' + nodo + '(query: "nombreenfermedad = \''+ _DISEASE_SELECTED + '\' AND '+ varfield.toLowerCase().replace(/é/gi,"e") +' = \'' + self.value_vartree +'\' "){'+ field_r.replace(/é/gi,"e") +'}}'
console.log(query)
$.ajax({
url: _url_zacatuche + "/niche/especie/getVariables",
dataType: "json",
type: "post",
data: {
"field": field_r,
"parentfield": parentfield_r,
"parentitem": self.value_vartree,
"footprint_region": _REGION_SELECTED,
"grid_res": _GRID_RES
},
method: "POST",
url: _url,
contentType: "application/json",
data: JSON.stringify({query: query}),
success: function (resp) {
console.log(resp)
let data2 = resp.data["occurrences_by_taxon_"+ nodo]
console.log(data2)
let uniqueObjArray = [
...new Map(data2.map((item) => [item["name"], item])).values(),
];
console.log(uniqueObjArray)
data = resp.data;
let data = uniqueObjArray
var current_node = $('#jstree_variables_species_' + id).jstree(true).get_node($("#root"));
//current_node.prop('title', );
......@@ -881,15 +1684,23 @@ var variable_module = (function (verbose, url_zacatuche) {
$('li').removeAttr("data-original-title");
$('#jstree_variables_species_' + id).removeAttr("data-original-title");
$('#jstree_variables_species_' + id).removeAttr("title");
if(field_r !== 'especievalidabusqueda'){
for (i = 0; i < data.length; i++) {
var idNode = "";
// console.log(data[i].name)
var namesp = data[i].name.replace(/ /g,"").replace(/\%/g,"").replace(/\)/g,"").replace(/\(/g,"").replace(/\./g,"").replace(/,/g,"")
let result = field_r;
console.log(Object.values(data))
var namesp1 = data[i]
var namesp = namesp1[field_r]
console.log(namesp)
var namesp = namesp1[field_r].replace(/ /g,"").replace(/\%/g,"").replace(/\)/g,"").replace(/\(/g,"").replace(/\./g,"").replace(/,/g,"")
// console.log(namesp)
if ($("#" + namesp).length > 0) {
......@@ -901,7 +1712,7 @@ var variable_module = (function (verbose, url_zacatuche) {
console.log("idNode: " + idNode)
var default_son = self.level_vartree < 8 ? [{text: "cargando..."}] : [];
var label_taxon = self.level_vartree < 8 ? data[i].name + " (spp: " + data[i].spp + ")" : data[i].name;
var label_taxon = self.level_vartree < 8 ? namesp1[field_r] : namesp1[field_r];
// label_taxon = self.level_vartree == 8 ? self.value_vartree + " " + label_taxon : label_taxon;
......@@ -910,12 +1721,12 @@ var variable_module = (function (verbose, url_zacatuche) {
var newNode = {
id: idNode,
text: label_taxon, //data[i].name + " (spp: " + data[i].spp + ")",
text: label_taxon, //data[i].name + " (spp: " + data[i].spp + ")",
icon: "plugins/jstree/images/dna.png",
attr: {
"nivel": self.level_vartree,
"type": _TYPE_TAXON
},
"nivel": self.level_vartree,
"type": _TYPE_TAXON
},
state: {'opened': false},
"children": default_son
};
......@@ -933,14 +1744,14 @@ var variable_module = (function (verbose, url_zacatuche) {
}
$("#jstree_variables_species_" + id).jstree(true).set_icon(current_node.id, "./plugins/jstree/images/dna.png");
var description_complement = '';
if(data[0].name.split(' ').length > 1 && field_r === 'especievalidabusqueda'){
if(namesp1[field_r].split(' ').length > 1 && field_r === 'especievalidabusqueda'){
description_complement += data[0].name.split(' ')[1];
description_complement += namesp1[field_r].split(' ')[1];
}
......@@ -955,12 +1766,10 @@ var variable_module = (function (verbose, url_zacatuche) {
}
}
});
})
}
// Evento generado cuando se realiza la acción de abrir una rama del árbol de selección, realiza la carga de los elementos que componen la rama a la cual se desea tener acceso.
self.getTreeVar = function (e, d) {
......@@ -973,36 +1782,36 @@ var variable_module = (function (verbose, url_zacatuche) {
console.log("No se encontraron datos debajo de este nivel")
return;
}
var next_field = "";
var next_nivel = 0;
var parent_field = "";
$("#jstree_variables_species_" + id).jstree(true).set_icon(d.node.id, "./plugins/jstree/dist/themes/default/throbber.gif");
$("#jstree_variables_species_" + id).jstree(true).set_icon(d.node.id, "plugins/jstree/images/dna.png");
if (d.node.original.attr.nivel == 2) {
parent_field = "reinovalido"
next_field = "phylumdivisionvalido";
parent_field = "reino"
next_field = "phylum";
next_nivel = 3;
} else if (d.node.original.attr.nivel == 3) {
parent_field = "phylumdivisionvalido"
next_field = "clasevalida";
parent_field = "phylum"
next_field = "clase";
next_nivel = 4;
} else if (d.node.original.attr.nivel == 4) {
parent_field = "clasevalida"
next_field = "ordenvalido";
parent_field = "clase"
next_field = "orden";
next_nivel = 5;
} else if (d.node.original.attr.nivel == 5) {
parent_field = "ordenvalido"
next_field = "familiavalida";
parent_field = "orden"
next_field = "familia";
next_nivel = 6;
} else if (d.node.original.attr.nivel == 6) {
parent_field = "familiavalida"
next_field = "generovalido";
parent_field = "familia"
next_field = "genero";
next_nivel = 7;
} else if (d.node.original.attr.nivel == 7) {
parent_field = "generovalido"
next_field = "especieepiteto";
parent_field = "genero"
next_field = "epitetoespecifico";
next_nivel = 8;
} else {
$('#jstree_variables_species_' + id).tooltip('hide');
......@@ -1013,35 +1822,67 @@ var variable_module = (function (verbose, url_zacatuche) {
_VERBOSE ? console.log(d.node.id) : _VERBOSE
_VERBOSE ? console.log(d.node.text) : _VERBOSE
var text_val = d.node.text
var regex = / \(spp: \d*\)/gi;
// elimina el (spp: N) del valir para realizar la busqueda de manera correcta
var label_value = text_val.replace(regex, '');
_VERBOSE ? console.log(label_value) : _VERBOSE
_VERBOSE ? console.log(label_value) : _VERBOSE
_REGION_SELECTED = ($("#footprint_region_select").val() !== null && $("#footprint_region_select").val() !== undefined) ? parseInt($("#footprint_region_select").val()) : _REGION_SELECTED;
_GRID_RES = $("#grid_resolution").val();
console.log("REGION_SELECTED: " + _REGION_SELECTED);
console.log("_GRID_RES: " + _GRID_RES);
if (_AGENT_SELECTED == 'Hospederos')
var _url = 'http://10.90.0.42:4006/graphql/hospederos/'
else if (_AGENT_SELECTED == 'Patogenos')
var _url = "http://10.90.0.42:4007/graphql/patogenos/"
else
var _url = "http://10.90.0.42:4008/graphql/vectores/"
let nodo = _AGENT_SELECTED.toLowerCase()
let query = 'query{occurrences_by_taxon_' + nodo + '(query: "nombreenfermedad = \''+ _DISEASE_SELECTED + '\' AND '+ parent_field.toLowerCase() +' = \'' + label_value +'\' "){'+ next_field +'}}'
console.log(query)
$.ajax({
url: _url_zacatuche + "/niche/especie/getVariables",
dataType: "json",
type: "post",
data: {
"field": next_field,
"parentfield": parent_field,
// "parentitem": d.node.text.split(" ")[0],
"parentitem": label_value,
"footprint_region": _REGION_SELECTED,
"grid_res": _GRID_RES
},
method: "POST",
url: _url,
contentType: "application/json",
data: JSON.stringify({query: query}),
success: function (resp) {
console.log(resp)
let data2 = resp.data["occurrences_by_taxon_" + nodo]
console.log(data2)
console.log(data2[0])
let uniqueObjArray = []
for (let i = 0; i < data2.length; i++) {
let val = data2[i];
//console.log(val)
if(uniqueObjArray.indexOf(val) === -1) {
uniqueObjArray.push(val);
}
data = resp.data;
}
let uniqueObjArray1 = [
...new Map( uniqueObjArray.map((item) => [item[next_field], item])).values(),
];
console.log(uniqueObjArray1)
let data = uniqueObjArray1
$('ul').tooltip('hide');
$('li').tooltip('hide');
......@@ -1053,7 +1894,8 @@ var variable_module = (function (verbose, url_zacatuche) {
for (i = 0; i < data.length; i++) {
var idNode = "";
var name_variable = data[i].name
var camp = data[i]
var name_variable = camp[next_field]
console.log("name_variable: " + name_variable)
......@@ -1064,11 +1906,11 @@ var variable_module = (function (verbose, url_zacatuche) {
} else {
// ._VERBOSE ? console.log("nuevo_id") : _VERBOSE;
idNode = data[i].id;
idNode = camp[next_field];
}
var default_son = next_nivel < 8 ? [{text: "cargando..."}] : [];
var label_taxon = next_nivel < 8 ? data[i].name + " (spp: " + data[i].spp + ")" : data[i].name;
var label_taxon = next_nivel < 8 ? camp[next_field] : camp[next_field]; //" (spp: " + data[i].spp + ")"
var newNode = {
id: idNode,
......@@ -1102,8 +1944,9 @@ var variable_module = (function (verbose, url_zacatuche) {
// Evento generado cuando cambia el estado de selección del árbol, almacena los elementos que fueron seleccionados del grupo de variables taxonómicas.
self.getChangeTreeVar = function (e, data) {
self.getChangeTreeVar = function (e, data) {
console.log("cambiaste el arbol")
_VERBOSE ? console.log("self.getChangeTreeVar") : _VERBOSE;
self.arrayVarSelected = [];
......@@ -1146,9 +1989,9 @@ var variable_module = (function (verbose, url_zacatuche) {
self.arrayVarSelected.push({label: node_temp.text, level: level, numlevel: node_temp.attr.nivel, type: node_temp.attr.type, parent: parent_node.text});
// if (node_temp.attr.nivel == 8) {
//
//
// self.arrayVarSelected.push({label: node_temp.text, level: level, numlevel: node_temp.attr.nivel, type: node_temp.attr.type, parent: parent_node.text});
//
//
// }
// else {
//
......@@ -1320,6 +2163,7 @@ var variable_module = (function (verbose, url_zacatuche) {
// _VERBOSE ? console.log("remove item") : _VERBOSE;
d3.select(this.parentNode).remove();
var gpo_deleted;
a
$.each(self.groupDatasetTotal, function (index, obj) {
if (obj.groupid == d.groupid) {
......@@ -1331,6 +2175,7 @@ var variable_module = (function (verbose, url_zacatuche) {
_VERBOSE ? console.log(gpo_deleted) : _VERBOSE;
self.updateVarSelArray(gpo_deleted, _BORRADO);
});
......@@ -1366,7 +2211,20 @@ var variable_module = (function (verbose, url_zacatuche) {
_VERBOSE ? console.log("self.addOtherGroup") : _VERBOSE;
// console.log(idTree);
// console.log(arraySelected);
console.log(arraySelected);
const iterator = arraySelected.values();
for (const value of iterator) {
var variable = value
console.log(variable)
_PARENT_FIELD = variable["level"]
_LABEL_VALUE = variable["label"]
console.log(_PARENT_FIELD)
console.log(_LABEL_VALUE)
}
// console.log(gpoName);
// console.log(idDivContainer);
// console.log(typeVar);
......@@ -1379,7 +2237,7 @@ var variable_module = (function (verbose, url_zacatuche) {
// _toastr.warning(_iTrans.prop('lb_nivel_reino'));
// return;
// }
var new_element = self.existsGroup(arraySelected);
// _VERBOSE ? console.log(new_element) : _VERBOSE;
......@@ -1496,6 +2354,7 @@ var variable_module = (function (verbose, url_zacatuche) {
// _VERBOSE ? console.log("remove item") : _VERBOSE;
d3.select(this.parentNode).remove();
var gpo_deleted;
$.each(self.groupDatasetTotal, function (index, obj) {
if (obj.groupid == d.groupid) {
......@@ -1535,6 +2394,17 @@ var variable_module = (function (verbose, url_zacatuche) {
if (operacion == _BORRADO) {
_VERBOSE ? console.log("elemento borrado") : _VERBOSE;
$('#jstree_variables_species_target').jstree({
'plugins': ["wholerow", "checkbox"],
'core': {
'data': data,
'themes': {
'name': 'proton',
'responsive': true
},
'check_callback': true
}
});
$.each(self.var_sel_array, function (index, gpo_var) {
......@@ -1563,6 +2433,7 @@ var variable_module = (function (verbose, url_zacatuche) {
self.cleanVariables = function (idTree, idDivContainer, typeVar) {
_VERBOSE ? console.log("self.cleanVariables") : _VERBOSE;
$('#disease_selected').val("dis_default")
$('#' + idDivContainer).empty();
......@@ -1633,7 +2504,7 @@ var variable_module = (function (verbose, url_zacatuche) {
success: function (resp) {
if (resp.ok === true) {
console.log(data);
var data = resp.data;
_available_variables = data;
......@@ -1656,7 +2527,7 @@ var variable_module = (function (verbose, url_zacatuche) {
* @function createSelectorComponent
* @public
* @memberof! table_module
*
*
* @param {String} parent - Id del contenedor del selector de variables
* @param {String} id - Id del selector de variables
* @param {String} title - Título del selector de variables desplegado en la parte superior
......@@ -1681,9 +2552,9 @@ var variable_module = (function (verbose, url_zacatuche) {
* @function _initializeVarComponents
* @private
* @memberof! table_module
*
*
* @param {object} language_module - Módulo de internacionalización
* @param {integer} tipo_modulo - Tipo de módulo donde serán asignados los selectores de variables, nicho o comunidad ecológica
* @param {integer} tipo_modulo - Tipo de módulo donde serán asignados los selectores de variables, nicho o comunidad ecológica
*/
function _initializeVarComponents(language_module, tipo_modulo, map_module) {
......@@ -1719,10 +2590,10 @@ var variable_module = (function (verbose, url_zacatuche) {
* @function startVar
* @public
* @memberof! table_module
*
*
* @param {String} id - Id del selector de variables
* @param {object} language_module - Módulo de internacionalización
* @param {integer} tipo_modulo - Tipo de módulo donde serán asignados los selectores de variables, nicho o comunidad ecológica
* @param {integer} tipo_modulo - Tipo de módulo donde serán asignados los selectores de variables, nicho o comunidad ecológica
*/
function startVar(id, language_module, tipo_modulo, map_module) {
_VERBOSE ? console.log("startVar") : _VERBOSE;
......@@ -1735,6 +2606,11 @@ var variable_module = (function (verbose, url_zacatuche) {
_initializeVarComponents(language_module, tipo_modulo, map_module);
}
function getTreeTargetFunction(agent_selected, disease_text_selected) {
}
return{
startVar: startVar,
getVarSelArray: getVarSelArray,
......
......@@ -2908,4 +2908,9 @@ var datetimepickerFactory = function ($) {
return special.settings.adjustOldDeltas && orgEvent.type === 'mousewheel' && absDelta % 120 === 0;
}
$('#yearPicker').datetimepicker({
format : "YYYY",
viewMode : "years",
});
}));
......@@ -6,7 +6,7 @@ lb_occ_min = Min. Celdas con ocurrencia (nj)
lb_apriori = A\u00f1adir a priori
lb_mapprob = Mapa de probabilidad
lb_reg_fecha = Incluir registros sin fecha
lb_range_fecha = Filtrar por fecha
lb_range_fecha = Filtrar por año
btn_regenerar = Regenerar
lb_genera_red = Generar red
lb_info_slider = ATR: Atracci\u00f3n entre nodos
......
......@@ -21,6 +21,7 @@ a_taxon = Grupos de interés
a_clima = Climáticas
a_topo = Topográficas
a_raster = Raster
a_socio = Socioeconómicas
lb_occ = Ocurrencias grupo
lb_occ_celda = Área con ocurrencias del grupo (ni)
btn_variable = Escoge Grupo
......@@ -165,7 +166,7 @@ lb_fosil = Fósiles
lb_apriori = Añadir a priori
lb_mapprob = Mapa de probabilidad
lb_reg_fecha = Registros sin fecha
lb_range_fecha = Filtrar por fecha
lb_range_fecha = Filtrar por año
labelFecha = {0} - {1}
reload_map = Filtrar
see_species = Ver Grupo de interés
......
......@@ -21,6 +21,7 @@ a_taxon = Taxonomic
a_clima = Climatic
a_topo = Others
a_raster = Raster
a_socio = Socioeconomics
lb_occ = Species occurrences
lb_occ_celda = Cells with species occurrences
btn_variable = Taxon
......
......@@ -21,6 +21,7 @@ a_taxon = Taxonómicas
a_clima = Climáticas
a_topo = Topográficas
a_raster = Raster
a_socio = Socioeconómicas
lb_occ = Ocurrencias especie
lb_occ_celda = Celdas con ocurrencias de la especie (ni)
btn_variable = Taxon
......@@ -164,7 +165,7 @@ lb_fosil = Fósiles
lb_apriori = Añadir a priori
lb_mapprob = Mapa de probabilidad
lb_reg_fecha = Registros sin fecha
lb_range_fecha = Filtrar por fecha
lb_range_fecha = Filtrar por año
labelFecha = {0} - {1}
reload_map = Filtrar
see_species = Ver especies
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment