Merge pull request #321 from openclassify/vedat

fixed location edit
This commit is contained in:
Fatih Alp 2020-02-14 10:50:40 +03:00 committed by GitHub
commit ed962b8715
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,109 +1,126 @@
/* Location Data */ /* Location Data */
var boundsAction = false;
var getCountry = $('.country-data').data('content'); var getCountry = $('.country-data').data('content');
if(getCountry == ""){getCountry = default_country;} if (getCountry == "") {
getCountry = default_country;
}
var getCity = $('.city-data').data('content'); var getCity = $('.city-data').data('content');
if(getCity == ""){getCity = default_city;} if (getCity == "") {
getCity = default_city;
}
var getDistrict = $('.district-data').data('content'); var getDistrict = $('.district-data').data('content');
if(getDistrict == ""){getDistrict = default_district;} if (getDistrict == "") {
getDistrict = default_district;
}
var getNeighborhood = $('.neighborhood-data').data('content'); var getNeighborhood = $('.neighborhood-data').data('content');
if(getNeighborhood == ""){getNeighborhood = default_neighborhood;} if (getNeighborhood == "") {
getNeighborhood = default_neighborhood;
}
var getVillage = $('.village-data').data('content'); var getVillage = $('.village-data').data('content');
var citySelectName = "city"; var citySelectName = "city";
var districtSelectName = "district"; var districtSelectName = "district";
var neighborhoodSelectName = "neighborhood"; var neighborhoodSelectName = "neighborhood";
var villageSelectName = "village"; var villageSelectName = "village";
var countrySelectName = "country"; var countrySelectName = "country";
jQuery( document ).ready(function( $ ) { jQuery(document).ready(function ($) {
}).promise().done(function() { }).promise().done(function () {
$('select[name="country"]').val(getCountry); $('select[name="country"]').val(getCountry);
}).promise().done(function() { }).promise().done(function () {
var cat = getCountry; var cat = getCountry;
var level = 1; var level = 1;
var name = citySelectName; var name = citySelectName;
Locations(cat, level, name); Locations(cat, level, name);
}).promise().done(function() { }).promise().done(function () {
var cat = getCity; var cat = getCity;
var level = 2; var level = 2;
var name = districtSelectName; var name = districtSelectName;
Locations(cat, level, name); Locations(cat, level, name);
}).promise().done(function() { }).promise().done(function () {
var cat = getDistrict; var cat = getDistrict;
var level = 3; var level = 3;
var name = neighborhoodSelectName; var name = neighborhoodSelectName;
Locations(cat, level, name); Locations(cat, level, name);
}).promise().done(function() { }).promise().done(function () {
var cat = getNeighborhood; var cat = getNeighborhood;
var level = 4; var level = 4;
var name = villageSelectName; var name = villageSelectName;
Locations(cat, level, name); Locations(cat, level, name);
}); });
$(document).on('change', 'select[name="'+countrySelectName+'"]', function(){ $(document).on('change', 'select[name="' + countrySelectName + '"]', function () {
var cat = $(this).val(); var cat = $(this).val();
var level = 1; var level = 1;
var name = citySelectName; var name = citySelectName;
boundsAction = true;
Locations(cat, level, name); Locations(cat, level, name);
}); });
$(document).on('change', 'select[name="'+citySelectName+'"]', function(){ $(document).on('change', 'select[name="' + citySelectName + '"]', function () {
var cat = $(this).val(); var cat = $(this).val();
var level = 2; var level = 2;
var name = districtSelectName; var name = districtSelectName;
boundsAction = true;
Locations(cat, level, name) Locations(cat, level, name)
}); });
$(document).on('change', 'select[name="'+districtSelectName+'"]', function(){ $(document).on('change', 'select[name="' + districtSelectName + '"]', function () {
var cat = $(this).val(); var cat = $(this).val();
var level = 3; var level = 3;
var name = neighborhoodSelectName; var name = neighborhoodSelectName;
boundsAction = true;
Locations(cat, level, name) Locations(cat, level, name)
}); });
$(document).on('change', 'select[name="'+neighborhoodSelectName+'"]', function(){ $(document).on('change', 'select[name="' + neighborhoodSelectName + '"]', function () {
var cat = $(this).val(); var cat = $(this).val();
var level = 4; var level = 4;
var name = villageSelectName; var name = villageSelectName;
boundsAction = true;
Locations(cat, level, name) Locations(cat, level, name)
}); });
function Locations(cat, level, name){
function Locations(cat, level, name) {
$.ajax({ $.ajax({
type: "GET", type: "GET",
data: "cat=" + cat + "&level=" + level, data: "cat=" + cat + "&level=" + level,
url: "/class/ajax", url: "/class/ajax",
success: function(msg){ success: function (msg) {
$('select[name="'+name+'"]').find('option').remove(); $('select[name="' + name + '"]').find('option').remove();
$('select[name="'+name+'"]').append('<option value="">Choose an option...</option>'); $('select[name="' + name + '"]').append('<option value="">Choose an option...</option>');
$.each(msg, function(key, value){ $.each(msg, function (key, value) {
$('select[name="'+name+'"]').append('<option value="'+value.id+'">'+value.name+'</option>'); $('select[name="' + name + '"]').append('<option value="' + value.id + '">' + value.name + '</option>');
}); });
} }
}).promise().done(function() { }).promise().done(function () {
setLocation(level); setLocation(level);
haritaIslem(0); haritaIslem(0);
}); });
} }
function setLocation(level){ function setLocation(level) {
if(level == 1){ if (level == 1) {
$('select[name="'+citySelectName+'"]').val(getCity); $('select[name="' + citySelectName + '"]').val(getCity);
}else if(level == 2){ } else if (level == 2) {
$('select[name="'+districtSelectName+'"]').val(getDistrict); $('select[name="' + districtSelectName + '"]').val(getDistrict);
}else if(level == 3){ } else if (level == 3) {
$('select[name="'+neighborhoodSelectName+'"]').val(getNeighborhood); $('select[name="' + neighborhoodSelectName + '"]').val(getNeighborhood);
}else if(level == 4){ } else if (level == 4) {
$('select[name="'+villageSelectName+'"]').val(getVillage); $('select[name="' + villageSelectName + '"]').val(getVillage);
} }
} }
var locationedit = $('input[name="map_Val"]').val(); var locationedit = $('input[name="map_Val"]').val();
if(locationedit){ if (locationedit) {
var coordcenter = new google.maps.LatLng(locationedit); var lat = locationedit.split(",")[0];
}else{ var lng = locationedit.split(",")[1];
var coordcenter = new google.maps.LatLng(lat, lng);
} else {
var coordcenter = new google.maps.LatLng(38.9573415, 35.2415759); var coordcenter = new google.maps.LatLng(38.9573415, 35.2415759);
} }
var mapOptions = { var mapOptions = {
center: coordcenter, center: coordcenter,
zoom: 6, zoom: 20,
mapTypeId: google.maps.MapTypeId.STREET mapTypeId: google.maps.MapTypeId.STREET
}; };
var secildi = 0; var secildi = 0;
@ -112,19 +129,19 @@ var map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions)
function haritaIslem() { function haritaIslem() {
var str = ''; var str = '';
if ($('select[name="'+countrySelectName+'"]').val() != "") { if ($('select[name="' + countrySelectName + '"]').val() != "") {
str += $('select[name="'+countrySelectName+'"] :selected').text() + ' '; str += $('select[name="' + countrySelectName + '"] :selected').text() + ' ';
} }
if ($('select[name="'+citySelectName+'"]').val() != "") { if ($('select[name="' + citySelectName + '"]').val() != "") {
str += $('select[name="'+citySelectName+'"] :selected').text() + ' '; str += $('select[name="' + citySelectName + '"] :selected').text() + ' ';
} }
if ($('select[name="'+districtSelectName+'"]').val() != "") { if ($('select[name="' + districtSelectName + '"]').val() != "") {
str += $('select[name="'+districtSelectName+'"] :selected').text() + ' '; str += $('select[name="' + districtSelectName + '"] :selected').text() + ' ';
} }
if ($('select[name="'+neighborhoodSelectName+'"]').val() != "") { if ($('select[name="' + neighborhoodSelectName + '"]').val() != "") {
str += $('select[name="'+neighborhoodSelectName+'"] :selected').text() + ' '; str += $('select[name="' + neighborhoodSelectName + '"] :selected').text() + ' ';
} }
if (!str) { if (!str) {
return true; return true;
} }
@ -140,12 +157,11 @@ function haritaIslem() {
var lng = results[0].geometry.location.lng(); var lng = results[0].geometry.location.lng();
var latlng = new google.maps.LatLng(lat, lng); var latlng = new google.maps.LatLng(lat, lng);
var bounds = results[0].geometry.bounds; var bounds = results[0].geometry.bounds;
if (boundsAction) {
if (bounds != undefined) {
map.fitBounds(bounds); map.fitBounds(bounds);
} }
} }
if ($('select[name="'+neighborhoodSelectName+'"]').val() != "" && $('select[name="'+neighborhoodSelectName+'"]').val() != 0 && secildi == 0) { if ($('select[name="' + neighborhoodSelectName + '"]').val() != "" && $('select[name="' + neighborhoodSelectName + '"]').val() != 0 && secildi == 0) {
secildi = 1; secildi = 1;
} }
@ -153,13 +169,12 @@ function haritaIslem() {
} }
function placeMarker(location) { function placeMarker(location) {
console.log(location);
var lat = location.lat(); var lat = location.lat();
var lng = location.lng(); var lng = location.lng();
$(".mapVal").val(lat + "," + lng); $(".mapVal").val(lat + "," + lng);
if (marker) { if (marker) {
marker.setPosition(location); marker.setPosition(location);
$("#map").data(lat+","+lng); $("#map").data(lat + "," + lng);
} else { } else {
marker = new google.maps.Marker({ marker = new google.maps.Marker({
position: location, position: location,
@ -170,19 +185,22 @@ function placeMarker(location) {
} }
editMarket(); editMarket();
function editMarket() { function editMarket() {
var locationedit = $('input[name="map_Val"]').val(); var locationedit = $('input[name="map_Val"]').val();
if(locationedit){ if (locationedit) {
var lat = locationedit.split(",")[0]; var lat = locationedit.split(",")[0];
var lng = locationedit.split(",")[1]; var lng = locationedit.split(",")[1];
var location = new google.maps.LatLng(lat, lng);
$(".mapVal").val($('input[name="map_Val"]')); var locationMap = new google.maps.LatLng(lat, lng);
$(".mapVal").val($('input[name="map_Val"]').val());
if (marker) { if (marker) {
marker.setPosition(location); marker.setPosition(locationMap);
$("#map").data(lat+","+lng); $("#map").data(lat + "," + lng);
} else { } else {
marker = new google.maps.Marker({ marker = new google.maps.Marker({
position: location, position: locationMap,
map: map map: map
}); });
} }