// For Web LSR page --> upload as getData.js
function getData(){
console.log("Data Retreived");
user_area.clearLayers(user_area);
Reports = [];
document.getElementById("displayTxt").checked = false;
document.getElementById("table").style.display = "none";
if ($.fn.DataTable.isDataTable('#reportText')) {
$('#reportText').DataTable().destroy();
console.log("destroyed");
}
//Format Start Date
var start_value = document.getElementById("start_time").value;
//console.log("Start value: " + start_value);
var start_string = start_value.toString();
var start_string = start_string.replace("-","");
var start_string = start_string.replace("-","");
var start_string = (start_string) + (document.getElementById("start_hour").value);
//Format End Date
var end_value = document.getElementById("end_time").value;
var end_string = end_value.toString();
var end_string = end_string.replace("-","");
var end_string = end_string.replace("-","");
var end_string = (end_string) + (document.getElementById("end_hour").value);
// Get lat/lon box
var check = 0;
var mapBounds = map.getBounds();
var south = document.getElementById("south").value;
var north = document.getElementById("north").value;
var east = document.getElementById("east").value;
var west = document.getElementById("west").value;
if ( north == "" && south == "" && east == "" && west == "") { check = 1;}
else {check = 2;};
if (south == "") {south = 23;}
if (north == "") {north = 50;}
if (east == "") {east = -65;}
if (west == "") {west = -128;}
var bounds = [[south,west],[north,east]];
if (check == 2){
L.rectangle(bounds, {color: "red", fill: false}).addTo(user_area);
user_area.addTo(map);
map.fitBounds(bounds);
}
//Set Data URL
var url = "https://mesonet.agron.iastate.edu/geojson/lsr.php?sts=" + start_string + "&ets=" + end_string + "&wfos=&callback=gotData";
//Get Data and set feature variables
$.getJSON(url, function (data) {
//clear markers
rain_markers.clearLayers(rain_markers);
snow_markers.clearLayers(snow_markers);
nontstrm_markers.clearLayers(nontstrm_markers);
tstrm_markers.clearLayers(tstrm_markers);
hail_markers.clearLayers(hail_markers);
tornado_markers.clearLayers(tornado_markers);
ice_markers.clearLayers(ice_markers);
flood_markers.clearLayers(flood_markers);
other_markers.clearLayers(other_markers);
Reports = [0];
var n = 0;
var collection = data;
collection.features.forEach(function (feature) {
n += 1;
var magnitude = +(feature.properties.magnitude);
if (magnitude == ""){
magnitude = 0;
}
var wfo = feature.properties.wfo;
var valid = feature.properties.valid;
valid = valid.replace("T"," ");
var rtype = feature.properties.type;
var county = feature.properties.county;
var category = feature.properties.typetext;
var state = feature.properties.st;
var remark = feature.properties.remark;
var city = feature.properties.city;
var source = feature.properties.source;
var lat = feature.properties.lat;
var lon = feature.properties.lon;
var popUpText = category + '
' + magnitude + '
' + remark +'
' + city + ", " + state + '
' + valid;
if ( n >= 3000) { alert("Warning! Not all data being displayed. Choose a smaller date range.");};
// Check if in user box
if( lat >= south && lat <=north && lon >= west && lon <= east){
var Report = {event_type: category, Magnitude: magnitude, City: city, State: state, valid_time: valid, Remark: remark };
Reports.push(Report);
if (rtype == "R"){
if (magnitude < 1){
L.marker([lat,lon],{icon:createRainIcon("#b2f7b3", "black", "0.5")}).addTo(rain_markers)
.bindPopup(popUpText);
}
if (magnitude >= 1 && magnitude <2){
L.marker([lat,lon],{icon:createRainIcon("#5CBD5F", "black", "0.5")}).addTo(rain_markers)
.bindPopup(popUpText);
}
if (magnitude >= 2 && magnitude <3){
L.marker([lat,lon],{icon:createRainIcon("#27822E", "black", "1")}).addTo(rain_markers)
.bindPopup(popUpText);
}
if (magnitude >= 3 && magnitude <4){
L.marker([lat,lon],{icon:createRainIcon("#6BD7CB", "black", "1")}).addTo(rain_markers)
.bindPopup(popUpText);
}
if (magnitude >= 4 && magnitude <5){
L.marker([lat,lon],{icon:createRainIcon("#4B66B4", "black", "1.5")}).addTo(rain_markers)
.bindPopup(popUpText);
}
if (magnitude >= 5 && magnitude <6){
L.marker([lat,lon],{icon:createRainIcon("#513EA4", "black", "1.5")}).addTo(rain_markers)
.bindPopup(popUpText);
}
if (magnitude >= 6 && magnitude <8){
L.marker([lat,lon],{icon:createRainIcon("#6E3192", "black", "2")}).addTo(rain_markers)
.bindPopup(popUpText);
}
if (magnitude >= 8 ){
L.marker([lat,lon],{icon:createRainIcon("#F122E3", "black", "2")}).addTo(rain_markers)
.bindPopup(popUpText);
}
}
else if (rtype == "O" || rtype =="N"){
if (magnitude < 35 ){
L.marker([lat,lon],{icon:createWindIcon("#FFEDCC", "1")}).addTo(nontstrm_markers)
.bindPopup(popUpText);
}
if (magnitude >= 35 && magnitude < 57 ){
L.marker([lat,lon],{icon:createWindIcon("#FFB266", "1")}).addTo(nontstrm_markers)
.bindPopup(popUpText);
}
if (magnitude >= 57 && magnitude < 75 ){
L.marker([lat,lon],{icon:createWindIcon("#FF8000", "1.5")}).addTo(nontstrm_markers)
.bindPopup(popUpText);
}
if (magnitude >= 75 ){
L.marker([lat,lon],{icon:createWindIcon("#996300", "2")}).addTo(nontstrm_markers)
.bindPopup(popUpText);
}
}
else if (rtype == "Z"){
L.marker([lat,lon],{icon:createSnowIcon("#ffffff", "red", "1.5")}).addTo(snow_markers)
.bindPopup(popUpText);
}
else if (rtype == "S"){
if (magnitude < 2){
L.marker([lat,lon],{icon:createSnowIcon("#e5e8ff", "black", "0.5")}).addTo(snow_markers)
.bindPopup(popUpText);
}
if (magnitude >= 2 && magnitude <4){
L.marker([lat,lon],{icon:createSnowIcon("#b2bbff", "black", "0.5")}).addTo(snow_markers)
.bindPopup(popUpText);
}
if (magnitude >= 4 && magnitude <6){
L.marker([lat,lon],{icon:createSnowIcon("#6678ff", "black", "0.5")}).addTo(snow_markers)
.bindPopup(popUpText);
}
if (magnitude >= 6 && magnitude <8){
L.marker([lat,lon],{icon:createSnowIcon("#1934ff", "black", "0.5")}).addTo(snow_markers)
.bindPopup(popUpText);
}
if (magnitude >= 8 && magnitude <12){
L.marker([lat,lon],{icon:createSnowIcon("#001eff", "black", "0.5")}).addTo(snow_markers)
.bindPopup(popUpText);
}
if (magnitude >= 12 && magnitude <18){
L.marker([lat,lon],{icon:createSnowIcon("#37007f", "black", "1")}).addTo(snow_markers)
.bindPopup(popUpText);
}
if (magnitude >= 18 && magnitude <24){
L.marker([lat,lon],{icon:createSnowIcon("#7d19ff", "black", "1")}).addTo(snow_markers)
.bindPopup(popUpText);
}
if (magnitude >= 24 && magnitude <30){
L.marker([lat,lon],{icon:createSnowIcon("#c900ff", "black", "1")}).addTo(snow_markers)
.bindPopup(popUpText);
}
if (magnitude >= 30 && magnitude <36){
L.marker([lat,lon],{icon:createSnowIcon("#ff00db", "black", "1.5")}).addTo(snow_markers)
.bindPopup(popUpText);
}
if (magnitude >= 36 && magnitude <48){
L.marker([lat,lon],{icon:createSnowIcon("#ff0000", "black", "1.5")}).addTo(snow_markers)
.bindPopup(popUpText);
}
if (magnitude >= 48 && magnitude <60){
L.marker([lat,lon],{icon: createSnowIcon("#ff9999", "black", "2")}).addTo(snow_markers)
.bindPopup(popUpText);
}
if (magnitude >= 60 ){
L.marker([lat,lon],{icon: createSnowIcon("#000000", "black", "2")}).addTo(snow_markers)
.bindPopup(popUpText);
}
}
else if (rtype == "D" || rtype == "G" || rtype == "M"){
if (magnitude < 50){
L.marker([lat,lon],{icon:createRectIcon("yellow", "1")}).addTo(tstrm_markers)
.bindPopup(popUpText);
}
if (magnitude >= 50 && magnitude < 75){
L.marker([lat,lon],{icon:createRectIcon("orange", "1.5")}).addTo(tstrm_markers)
.bindPopup(popUpText);
}
if (magnitude >= 75 ){
L.marker([lat,lon],{icon:createRectIcon("red", "2")}).addTo(tstrm_markers)
.bindPopup(popUpText);
}
}
else if (rtype == "0" || rtype == "Q"){
var temp = remark.split(" ");
for ( var x = 0; x < temp.length; x++){
//console.log("Temp is : " + temp[x]);
if (temp[x] == "MPH"){
var mag = temp[x-1];
magnitude = mag;
//console.log("Magnitude is: " + magnitude);
}
else if (temp[x].indexOf("MPH") !== -1) {
magnitude = temp[x].replace(/\D/g, '');
console.log("Magnitude is: " + magnitude);
}
}
if (magnitude.length == 4){
magnitude = magnitude.slice(2);
}
if (magnitude >= 35 && magnitude < 75){
L.marker([lat,lon],{icon: createSnowIcon("#FFFFFF", "red", ".5")}).addTo(trop_markers)
.bindPopup(popUpText);
}
if (magnitude >= 75 && magnitude < 100){
console.log("TEST");
L.marker([lat,lon],{icon: createSnowIcon("#808080", "red", "1")}).addTo(trop_markers)
.bindPopup(popUpText);
}
if (magnitude >= 100){
L.marker([lat,lon],{icon: createSnowIcon("#000000", "red", "2")}).addTo(trop_markers)
.bindPopup(popUpText);
}
}
else if (rtype == "T" || rtype == "C" || rtype == "W"){
L.marker([lat,lon],{icon:redIcon()}).addTo(tornado_markers)
.bindPopup(popUpText);
}
else if (rtype == "H"){
if (magnitude < 1){
L.marker([lat,lon],{icon:createHailIcon("#FF99FF", "1")}).addTo(hail_markers)
.bindPopup(popUpText);
}
if (magnitude >= 1 && magnitude < 2){
L.marker([lat,lon],{icon:createHailIcon("#FF3399", "1.5")}).addTo(hail_markers)
.bindPopup(popUpText);
}
if (magnitude >= 2){
L.marker([lat,lon],{icon:createHailIcon("#990099", "2")}).addTo(hail_markers)
.bindPopup(popUpText);
}
}
else if ( rtype == "5"){
if (magnitude >= 0 && magnitude < 0.10){
L.marker([lat,lon],{icon:createIceIcon("#999999", "1")}).addTo(ice_markers)
.bindPopup(popUpText);
}
if (magnitude >= 0.10 && magnitude < 0.25){
L.marker([lat,lon],{icon:createIceIcon("#FF99FF", "1.5")}).addTo(ice_markers)
.bindPopup(popUpText);
}
if (magnitude >= 0.25 && magnitude < 0.50){
L.marker([lat,lon],{icon:createIceIcon("#FF3399", "1.5")}).addTo(ice_markers)
.bindPopup(popUpText);
}
if (magnitude >= 0.50 ){
L.marker([lat,lon],{icon:createIceIcon("#990099", "2")}).addTo(ice_markers)
.bindPopup(popUpText);
}
}
else if ( rtype == "s"){
L.marker([lat,lon],{icon:ipIcon}).addTo(ice_markers)
.bindPopup(popUpText);
}
else if (rtype == "F" || rtype == "E" || rtype == "v"){
L.marker([lat,lon],{icon:createRainIcon("#b2f7b3", "red", "2")}).addTo(flood_markers)
.bindPopup(category + '
' + remark + '
' + city + ", " + state + '
' + valid);
}
else {
L.marker([lat,lon],{icon:blackIcon}).addTo(other_markers)
.bindPopup(popUpText);
}
}
});
console.log("Number of LSR's " + n);
});
}