Routes are not drawing Properly
<script>
$(document).ready(function() {
$('#searchBtn').click(function(event) {
var office_id = $("#office_id").val();
var salesman_id = $("#salesman").val();
var path_date = $("#path_date").val();
$.ajax({
type: 'POST',
url: '<?php echo base_url() ?>salesman/get_salesman_path_by_id',
data : {salesman_id:salesman_id, path_date:path_date},
success: function (response) {
var result = response ;
initMap3(result);
}
})
});
});
</script>
<div id="menu3" class="tab-pane fade">
<input type="hidden" value="0">
<div class="row routeMap">
<div class="col-xs-12 col-sm-12 col-md-2 div1" style="padding-right: 0px">
<select id="office" class="form-control " name="office_id" selected="selected" required="required">
<option value="">Select Office</option>
<?php foreach ($office as $v){ ?>
<option value="<?php echo $v["id"]?>"><?php echo $v["name"];?></option> <?php } ?>
</select>
</div>
<div class="col-xs-12 col-sm-12 col-md-2 div2" style="padding-left: 0px;padding-right: 0px">
<select id="salesman" class="form-control " name="salesman_id" selected="selected" required="required">
<option value="">Select Staff</option>
</select>
</div>
<div class="col-xs-12 col-sm-12 col-md-2 div3" style="padding-right: 0px;padding-left: 0px">
<input type="date" class="form-control " name="path_date" id="path_date">
</div>
<div class="col-xs-12 col-sm-12 col-md-1 div4" style="padding-left: 0px;padding-right: 0px;">
<input type="button" class="btn btn-success " value="Submit" id="searchBtn">
</div>
</div>
<div id="map3"></div>
</div>
function initMap3(data) {
var map3 = new google.maps.Map(document.getElementById('map3'), {
zoom: 7,
center: new google.maps.LatLng(30.375321, 69.34511599999996),
mapTypeId: google.maps.MapTypeId.ROADMAP
});
var locations3 = JSON.parse(data);
var clicked = false;
var salesmanPath = [];
$.each(locations3.salesman, function( index, value ) {
salesmanPath.push({
lat: parseFloat(value.latitude),
lng: parseFloat(value.longitude)
});
});
var markedAndStay= [];
$.each(locations3.markAndStay, function( index, value ) {
markedAndStay.push({
lat: parseFloat(value.latitude),
lng: parseFloat(value.longitude),
locImg: value.image,
locName: value.location_name,
fname: value.first_name,
stayTime: value.stay_duration,
isStay: value.is_mark,
isMark: value.is_mark
});
});
var flightPath = new google.maps.Polyline({
path: salesmanPath,
geodesic: true,
strokeColor: '#FF0000',
strokeOpacity: 1.0,
strokeWeight: 2
});
flightPath.setMap(map3);
var infowindow = new google.maps.InfoWindow({});
var marker, i;
var stayLocations = markedAndStay;
for (i = 0; i < stayLocations.length; i++)//this loop shows marked location and stay
{
if (stayLocations[i].isMark == 1) {
marker = new google.maps.Marker({
position: new google.maps.LatLng(stayLocations[i]),
map: map3,
icon: 'assets/Images/blue.png'
}),
google.maps.event.addListener(marker, 'mouseover', (function (marker, i) {
return function () {
if (!clicked) {
infowindow.setContent('<div><img src="' + markedAndStay[i].locImg + '" width="60px" height="60px" /><br>' + '<strong>Name: </strong><span>' + stayLocations[i].fname + '</span><br>' + '<strong>Location: </strong>' + stayLocations[i].locName + '<br>' + '<strong>' + stayLocations[i].stayTime +'</strong></div>' );
infowindow.open(map3, this);
}
}
})(marker, i)),
google.maps.event.addListener(marker, 'click', (function(marker, i) {
return function () {
clicked = true;
infowindow.setContent('<div><img src="' + markedAndStay[i].locImg + '" width="60px" height="60px" /><br>' + '<strong>Name: </strong><span>' + stayLocations[i].fname + '</span><br>' + '<strong>Location: </strong>' + stayLocations[i].locName + '<br>' + '<strong>' + stayLocations[i].stayTime +'</strong></div>' );
infowindow.open(map3, this);
}
})(marker, i)),
marker.addListener('mouseout', function() {
if (!clicked) {
infowindow.close();
}
}),
google.maps.event.addListener(infowindow,
'closeclick',
function() {
clicked = false;
})
}else{
marker = new google.maps.Marker({
position: new google.maps.LatLng(stayLocations[i]),
map: map3,
icon: 'assets/Images/orange.png'
}),
google.maps.event.addListener(marker, 'mouseover', (function (marker, i) {
return function () {
if (!clicked) {
infowindow.setContent( '<div><strong>Name: </strong><span>' + stayLocations[i].fname + '</span><br>' + '<strong>Location: </strong>' + stayLocations[i].locName + '<br>' + '<strong>' + stayLocations[i].stayTime +'</strong></div>' );
infowindow.open(map3, this);
}
}
})(marker, i)),
google.maps.event.addListener(marker, 'click', (function(marker, i) {
return function () {
clicked = true;
infowindow.setContent('<div><strong>Name: </strong><span>' + stayLocations[i].fname + '</span><br>' + '<strong>Location: </strong>' + stayLocations[i].locName + '<br>' + '<strong>' + stayLocations[i].stayTime +'</strong></div>' );
infowindow.open(map3, this);
}
})(marker, i)),
marker.addListener('mouseout', function() {
if (!clicked) {
infowindow.close();
}
}),
google.maps.event.addListener(infowindow,
'closeclick',
function() {
clicked = false;
})
}
}
}