public void drawosmmap() { mapwithanimation = ""; try { DataTable dt = new DataTable(); ibuckethead bucket = new ibuckethead(); SqlCommand cmd = new SqlCommand(@"SELECT STUFF( ( SELECT CAST([Data] AS XML) FROM ( SELECT 'ol.proj.transform([' + l_long + ','+ l_lat+'], 'EPSG:4326','EPSG:3857'),' as[Data],l_time from [location30days] where l_date ='" + txt_frmDate.Text + @"' and userid = '" + uid + @"' and CONVERT(time, replace(l_time,' ','')) between '" + ddFromTime.SelectedValue + "' and '" + ddToTime.SelectedValue + @"' ) alldata order by CONVERT(time, replace(l_time,' ','')) asc FOR XML PATH('') ) , 1 , 0 , '' ), STUFF( ( SELECT CAST([Data] AS XML) FROM ( SELECT top 1 ' User ID : ' +userid +'<br/>User Name : '+ username +'<br/> Mobile No : '+ mobile as[Data],l_time from [location30days] where l_date ='" + txt_frmDate.Text + @"' and userid = '" + uid + @"' and CONVERT(time, replace(l_time,' ','')) between '" + ddFromTime.SelectedValue + "' and '" + ddToTime.SelectedValue + @"' ) alldata order by CONVERT(time, replace(l_time,' ','')) asc FOR XML PATH('') ) , 1 , 0 , '' ), STUFF( ( SELECT CAST([Data] AS XML) FROM ( SELECT top 1 'ol.proj.transform([' + l_long + ','+ l_lat+'], 'EPSG:4326','EPSG:3857'),' as[Data],l_time from [location30days] where l_date ='" + txt_frmDate.Text + @"' and userid = '" + uid + @"' and CONVERT(time, replace(l_time,' ','')) between '" + ddFromTime.SelectedValue + "' and '" + ddToTime.SelectedValue + @"' order by CONVERT(time, replace(l_time,' ','')) asc ) alldata FOR XML PATH('') ) , 1 , 0 , '' ), STUFF( ( SELECT CAST([Data] AS XML) FROM ( SELECT top 1 'ol.proj.transform([' + l_long + ','+ l_lat+'], 'EPSG:4326','EPSG:3857'),' as[Data],l_time from [location30days] where l_date ='" + txt_frmDate.Text + @"' and userid = '" + uid + @"' and CONVERT(time, replace(l_time,' ','')) between '" + ddFromTime.SelectedValue + "' and '" + ddToTime.SelectedValue + @"' order by CONVERT(time, replace(l_time,' ','')) desc ) alldata FOR XML PATH('') ) , 1 , 0 , '' ), STUFF( ( SELECT CAST([Data] AS XML) FROM ( SELECT top 1000 '[' + lat + ','+ lon+ ', '+CHAR(39)+'PM Date Time : '+Convert(varchar(10),Convert(date,vdate),103)+' '+vtime+'<br/>ATMID : '+ATMID+ CHAR(39)+']|' as[Data],vtime,vdate,ATMID from DR_CTP where vdate ='" + txt_frmDate.Text + @"' and userid = '" + uid + @"' and CONVERT(time, replace(vtime,' ','')) between '" + ddFromTime.SelectedValue + "' and '" + ddToTime.SelectedValue + @"' order by CONVERT(time, replace(vtime,' ','')) asc ) alldata FOR XML PATH('') ) , 1 , 0 , '' )"); // Response.Write(cmd.CommandText); cmd.CommandTimeout = 999999; dt = bucket.GetData(cmd); string dailyvisit = ""; DataTable dtcheckin = new DataTable(); // dtcheckin = bucket.BindoboutGrid(dailyvisit, out rows); string path = ""; string uadd = ""; string uaddlast = ""; string incoords = ""; string outcoords = ""; string daudits = ""; string auditcoords = ""; if (dt.Rows.Count > 0) { path += dt.Rows[0][0].ToString(); string[] inparts = dt.Rows[0][2].ToString().Split(','); incoords = inparts[0].Replace('[', ' ') + inparts[1].Replace(']', ' '); incoords = dt.Rows[0][2].ToString(); outcoords = dt.Rows[0][3].ToString(); uadd = dt.Rows[0][1].ToString(); uaddlast = dt.Rows[0][1].ToString(); // daudits = dt.Rows[0][4].ToString(); //auditcoords += "ol.proj.transform([" + dtcheckin.Rows[i][4].ToString() + ", " + dtcheckin.Rows[i][3].ToString() + "], 'EPSG:4326','EPSG:3857'),";//"[" + dt.Rows[i][3].ToString() + ", " + dt.Rows[i][4].ToString() + "],"; try { string[] inparts1 = new string[] { }; //string[] inparts1 = dt.Rows[0][4].ToString().Split(','); string[] inparts2 = dt.Rows[0][4].ToString().Split('|'); for (int i = 0; i < inparts2.Length; i++) { inparts1 = inparts2[i].Split(','); auditcoords += "ol.proj.transform([" + inparts1[1].Replace('[', ' ') + ", " + inparts1[0].Replace('[', ' ') + "], 'EPSG:4326','EPSG:3857'),";//"[" + dt.Rows[i][3].ToString() + ", " + dt.Rows[i][4].ToString() + "],"; //daudits += inparts1[2].Replace(']', ' '); daudits += "[" + inparts1[2] + ","; } } catch (Exception ex) { } } mapwithanimation = @"<script> try{ setTimeout(function(){ debugger; var sourceFeatures = new ol.source.Vector(), layerFeatures = new ol.layer.Vector({ source: sourceFeatures }); var container = document.getElementById('popup'); var content = document.getElementById('popup-content'); var closer = document.getElementById('popup-closer'); var overlay = new ol.Overlay(/** @type {olx.OverlayOptions} */({ element: container, autoPan: true, autoPanAnimation: { duration: 250 } })); closer.onclick = function () { document.getElementById('popup-content').innerHTML = ''; overlay.setPosition(undefined); closer.blur(); return false; }; var lineString = new ol.geom.LineString([]); var layerRoute = new ol.layer.Vector({ source: new ol.source.Vector({ features: [ new ol.Feature({ geometry: lineString }) ] }), style: [ new ol.style.Style({ stroke: new ol.style.Stroke({ width: 3, color: 'rgba(255, 0, 0, 1)' //lineDash: [.1, 5] }), zIndex: 2 }) ], updateWhileAnimating: true }); var loc = [" + incoords + @"]; var map = new ol.Map({ target: 'map', view: new ol.View({ center: loc[0], zoom: 4, minZoom: 2, maxZoom: 20 }), layers: [ new ol.layer.Tile({ source: new ol.source.OSM(), opacity: 0.6 }), layerRoute, layerFeatures ], overlays: [overlay] }); var iconFeatures = []; var view = map.getView(); var extent = ol.extent.boundingExtent([" + path.TrimEnd(',') + @"]); var size = map.getSize(); view.fit(extent, size); if (view.getZoom() > 16) { view.setZoom(9); } var CheckInloc=[" + incoords.TrimEnd(',') + @"]; var CheckIniconFeature = new ol.Feature({ geometry: new ol.geom.Point(CheckInloc[0]),//ol.proj.transform([-72.0704, 46.678], 'EPSG:4326','EPSG:3857')), name: '" + uadd + @"', type:'user', population: 4000, rainfall: 500 }); CheckIniconFeature.setStyle(new ol.style.Style({ image: new ol.style.Icon(/** @type {olx.style.IconOptions} */({ //color: '#8959A8', //crossOrigin: 'anonymous', anchor: [0.5, 30], anchorXUnits: 'fraction', anchorYUnits: 'pixels', src: 'http://maps.google.com/mapfiles/ms/icons/green-dot.png' })) })); iconFeatures.push(CheckIniconFeature); var CheckOutloc=[" + outcoords.TrimEnd(',') + @"]; var CheckouticonFeature = new ol.Feature({ geometry: new ol.geom.Point(CheckOutloc[0]),//ol.proj.transform([-72.0704, 46.678], 'EPSG:4326','EPSG:3857')), name: '" + uaddlast + @"', type:'user', population: 4000, rainfall: 500 }); CheckouticonFeature.setStyle(new ol.style.Style({ image: new ol.style.Icon(/** @type {olx.style.IconOptions} */({ //color: '#8959A8', //crossOrigin: 'anonymous', anchor: [0.5, 30], anchorXUnits: 'fraction', anchorYUnits: 'pixels', src: 'http://maps.google.com/mapfiles/ms/icons/red-dot.png' })) })); iconFeatures.push(CheckouticonFeature); var auditCoor = [ " + daudits.TrimEnd(',') + @"]; var j=1; var loc1 = [" + auditcoords.TrimEnd(',') + @"]; for (i = 0; i < auditCoor.length; i++) { debugger; var iconFeature = new ol.Feature({ geometry: new ol.geom.Point(loc1[i]),//ol.proj.transform([-72.0704, 46.678], 'EPSG:4326','EPSG:3857')), name: auditCoor[i], type:'audit', population: 4000, rainfall: 500 }); iconFeature.setStyle(new ol.style.Style({ image: new ol.style.Icon(/** @type {olx.style.IconOptions} */({ //color: '#8959A8', //crossOrigin: 'anonymous', anchor: [0.5, 30], anchorXUnits: 'fraction', anchorYUnits: 'pixels', src: 'http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld='+(j)+'|8E67FD|FFFFFF' })) })); iconFeatures.push(iconFeature); j++; } var vectorSource = new ol.source.Vector({ features: iconFeatures //add an array of features }); var iconStyle = new ol.style.Style({ image: new ol.style.Icon(/** @type {olx.style.IconOptions} */({ anchor: [0.5, 46], anchorXUnits: 'fraction', anchorYUnits: 'pixels', opacity: 0.75, src: 'http://openlayers.org/en/v3.9.0/examples/data/icon.png', })) }); var vectorLayer = new ol.layer.Vector({ source: vectorSource, //style: iconStyle }); map.addOverlay(vectorLayer); var markerEl = document.getElementById('geo-marker'); var marker = new ol.Overlay({ positioning: 'center-center', offset: [5, 0], element: markerEl, stopEvent: false }); var element = document.getElementById('popupinfo'); var popup = new ol.Overlay({ element: element, positioning: 'bottom-center', stopEvent: false, offset: [9, -21] }); map.addOverlay(popup); map.on('click', function (evt) { debugger; var feature = map.forEachFeatureAtPixel(evt.pixel, function (feature) { return feature; }); if (feature) { var coordinates = feature.getGeometry().getCoordinates(); var longlat = ol.proj.transform(coordinates, 'EPSG:3857', 'EPSG:4326'); popup.setPosition(coordinates); var sid = GetResults(longlat[1], longlat[0]); //var sid='brijesh'; // content.innerHTML = '<p>'+ feature.O.name+ '<br/>'+'Address : '+ sid.display_name+'</p>'; content.innerHTML = '<p>'+ feature.get('name')+ '<br/>'+'Address : '+ sid.display_name+'</p>'; overlay.setPosition(coordinates); } else { overlay.setPosition(undefined); closer.blur(); } }); map.addOverlay(marker); var fill = new ol.style.Fill({ color: 'rgba(255,255,255,1)' }), stroke = new ol.style.Stroke({ color: 'rgba(0,0,0,1)' }), style1 = [ new ol.style.Style({ image: new ol.style.Circle({ radius: 6, fill: fill, stroke: stroke }), zIndex: 4 }) ]; //a simulated path var path = [ " + path.TrimEnd(',') + @" ]; var feature_start = new ol.Feature({ geometry: new ol.geom.Point(path[0]) }), feature_end = new ol.Feature({ geometry: new ol.geom.Point(path[path.length - 1]) }); feature_start.setStyle(style1); feature_end.setStyle(style1); sourceFeatures.addFeatures([feature_start, feature_end]); lineString.setCoordinates(path); //fire the animation map.once('postcompose', function (event) { interval = setInterval(animation, 100); }); var i = 0, interval; var animation = function () { if (i == path.length) { i = 0; } marker.setPosition(path[i]); i++; }; }, 300); } catch(ee) { alert(ee); } function GetResults(lat, long) { var jsonObjectInstance = $.parseJSON($.ajax({ url: 'https://locationiq.org/v1/reverse.php?format=json&key=9c73f8c9ed5d47&lat=' + lat + '&lon=' + long, async: false, dataType: 'json' }).responseText); return jsonObjectInstance } </script>"; } catch (Exception) { mapwithanimation = "<div style='font-size:x-large;text-align:center;font-family:Cambria, Cochin, Georgia, Times;color:#696969;'>No details found..</div>" + @"<script> var container = document.getElementById('popup'); var geo = document.getElementById('geo-marker'); container.style.display = 'none'; geo.style.display = 'none'; </script>"; } // map.InnerHtml = mapwithanimation; Session["sess_x"] = mapwithanimation; }
public void drawmap() { mapwithanimation = ""; try { DataTable dt = new DataTable(); ibuckethead bucket = new ibuckethead(); SqlCommand cmd = new SqlCommand(@"SELECT STUFF( ( SELECT CAST([Data] AS XML) FROM ( SELECT '{ lat: ' + l_lat + ', lng:'+ l_long+'},' as[Data],l_time from [location30days] where l_date ='" + txt_frmDate.Text + @"' and userid = '" + uid + @"' and CONVERT(time, replace(l_time,' ','')) between '" + ddFromTime.SelectedValue + "' and '" + ddToTime.SelectedValue + @"' ) alldata order by CONVERT(time, replace(l_time,' ','')) asc FOR XML PATH('') ) , 1 , 0 , '' ), STUFF( ( SELECT CAST([Data] AS XML) FROM ( SELECT top 1 ' User ID : ' +userid +'<br/>Engineer Name : '+ username +'<br/> Mobile No : '+ contactno as[Data],l_time from [location30days] where l_date ='" + txt_frmDate.Text + @"' and userid = '" + uid + @"' and CONVERT(time, replace(l_time,' ','')) between '" + ddFromTime.SelectedValue + "' and '" + ddToTime.SelectedValue + @"' ) alldata order by CONVERT(time, replace(l_time,' ','')) asc FOR XML PATH('') ) , 1 , 0 , '' ), STUFF( ( SELECT CAST([Data] AS XML) FROM ( SELECT top 1 '[' + l_lat + ','+ l_long+'],' as[Data],l_time from [location30days] where l_date ='" + txt_frmDate.Text + @"' and userid = '" + uid + @"' and CONVERT(time, replace(l_time,' ','')) between '" + ddFromTime.SelectedValue + "' and '" + ddToTime.SelectedValue + @"' order by CONVERT(time, replace(l_time,' ','')) asc ) alldata FOR XML PATH('') ) , 1 , 0 , '' ), STUFF( ( SELECT CAST([Data] AS XML) FROM ( SELECT top 1 '[' + l_lat + ','+ l_long+'],' as[Data],l_time from [location30days] where l_date ='" + txt_frmDate.Text + @"' and userid = '" + uid + @"' and CONVERT(time, replace(l_time,' ','')) between '" + ddFromTime.SelectedValue + "' and '" + ddToTime.SelectedValue + @"' order by CONVERT(time, replace(l_time,' ','')) desc ) alldata FOR XML PATH('') ) , 1 , 0 , '' ), STUFF( ( SELECT CAST([Data] AS XML) FROM ( SELECT top 1000 '[' + lat + ','+ lon+ ', '+CHAR(39)+' PM Date Time : '+Convert(varchar(10),Convert(date,vdate),103)+' '+vtime+'<br/>ATMID : '+ATMID+ CHAR(39)+'],' as[Data],vtime,vdate,ATMID from DR_CTP where vdate ='" + txt_frmDate.Text + @"' and userid = '" + uid + @"' and CONVERT(time, replace(vtime,' ','')) between '" + ddFromTime.SelectedValue + "' and '" + ddToTime.SelectedValue + @"' order by CONVERT(time, replace(vtime,' ','')) asc ) alldata FOR XML PATH('') ) , 1 , 0 , '' )"); // Response.Write(cmd.CommandText); cmd.CommandTimeout = 999999; dt = bucket.GetData(cmd); string usercoor = ""; string lat = ""; string lng = ""; string path = ""; string uadd = ""; string audits = ""; if (dt.Rows.Count > 0) { path += dt.Rows[0][0].ToString(); string[] parts = dt.Rows[0][2].ToString().Split(','); lat = parts[0].Replace('[', ' '); lng = parts[1].Replace(']', ' '); usercoor += dt.Rows[0][2].ToString() + dt.Rows[0][3].ToString(); uadd = dt.Rows[0][1].ToString(); try { audits += dt.Rows[0][4].ToString(); } catch (Exception ex) { } } mapwithanimation = @"<script> try{ function initMap() { var userCoor = [ " + usercoor.TrimEnd(',') + @"]; var auditCoor = [" + audits.TrimEnd(',') + @"] var uaddress = '" + uadd + @"'; var map = new google.maps.Map(document.getElementById('map'), { center: { lat: " + lat + @" ,lng: " + lng + @"}, zoom: 10, mapTypeId: google.maps.MapTypeId.ROADMAP }); // Define the symbol, using one of the predefined paths ('CIRCLE') // supplied by the Google Maps JavaScript API. var a= 0; var lineSymbol = { path: google.maps.SymbolPath.FORWARD_CLOSED_ARROW, scale: 2, strokeColor: '#0000FF' }; // Create the polyline and add the symbol to it via the 'icons' property. var line = new google.maps.Polyline({ path: [ " + path.TrimEnd(',') + @" ], // path: [ { lat: 18.45202353, lng: 73.81140579 }, { lat: 23.0921453, lng: 72.5901526 }], icons: [{ icon: lineSymbol, offset: '100%' }], strokeColor: '#FF0000', map: map }); var infowindow = new google.maps.InfoWindow({ //content: contentString }); for (i = 0; i < userCoor.length; i++) { if(i==0){ var marker = new google.maps.Marker({ position: new google.maps.LatLng(userCoor[i][0], userCoor[i][1]), map: map, title: '', icon: new google.maps.MarkerImage('http://maps.google.com/mapfiles/ms/icons/green-dot.png') }); } else{ var marker = new google.maps.Marker({ position: new google.maps.LatLng(userCoor[i][0], userCoor[i][1]), map: map, title: '', icon: new google.maps.MarkerImage('http://maps.google.com/mapfiles/ms/icons/red-dot.png') }); } google.maps.event.addListener(marker, 'click', (function (marker, i) { return function () { var latlng = new google.maps.LatLng(userCoor[i][0],userCoor[i][1]); var geocoder = geocoder = new google.maps.Geocoder(); geocoder.geocode({ 'latLng': latlng }, function (results, status) { if (status == google.maps.GeocoderStatus.OK) { if (results[1]) { var contentString = ' '; contentString = uaddress +'<p> Address : ' + results[1].formatted_address +'</p>';// results[1].formatted_address; infowindow.setContent(contentString);//userCoor[i][3] infowindow.open(map, marker); } } }); } })(marker, i)); } for (i = 0; i < auditCoor.length; i++) { if(auditCoor.length != 0){ var marker1 = new google.maps.Marker({ position: new google.maps.LatLng(auditCoor[i][0], auditCoor[i][1]), map: map, title: '', icon: new google.maps.MarkerImage('http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld='+(i+1)+'|8E67FD|FFFFFF') }); } google.maps.event.addListener(marker1, 'click', (function (marker, i) { return function () { var latlng = new google.maps.LatLng(auditCoor[i][0],auditCoor[i][1]); var geocoder = geocoder = new google.maps.Geocoder(); geocoder.geocode({ 'latLng': latlng }, function (results, status) { if (status == google.maps.GeocoderStatus.OK) { if (results[1]) { var contentString = ' '; contentString = uaddress + '<br/>' + auditCoor[i][2] + '<p> Address : ' + results[1].formatted_address +'</p>';// results[1].formatted_address; infowindow.setContent(contentString);//userCoor[i][3] infowindow.open(map, marker); } } }); } })(marker1, i)); } animateCircle(line); } // Use the DOM setInterval() function to change the offset of the symbol // at fixed intervals. function animateCircle(line) { var count = 0; window.setInterval(function () { count = (count + 1) % 200; var icons = line.get('icons'); icons[0].offset = (count / 2) + '%'; line.set('icons', icons); }, 200); } } catch(ee) { alert(ee); } </script>"; } catch (Exception) { mapwithanimation = "No details found.."; } Session["sess_x"] = mapwithanimation; }
protected void Page_Load(object sender, EventArgs e) { Page.Server.ScriptTimeout = 50000; defaultCalendarExtender.EndDate = Convert.ToDateTime(DateTime.Now.Date.ToString("MM/dd/yyyy")); //defaultCalendarExtender.EndDate = Convert.ToDateTime(DateTime.Now.Date.ToString("MM/dd/yyyy")); //string update = "update location set L_date = Convert(varchar(15),Convert(date,getdate()),101) , l_time = Convert(char(8),Convert(time,getdate()),109) where isdate(l_date) <> 1 ;" + // "delete from locationHist where isdate(l_date) <> 1"; //bucket.ExecuteQuery(update); if (!Page.IsPostBack) { Session["sess_x"] = ""; ddofficer.DataBind(); uid = Request.QueryString["userid"].ToString(); txt_frmDate.Text = DateTime.Now.Date.ToString("MM'/'dd'/'yyyy"); ddofficer.Items.Add(new ListItem("ALL", "ALL")); ddofficer.SelectedValue = uid; lblusername.Text = "Location of " + uid; if (ddofficer.SelectedValue == "ALL") { sql = "select l.userid,l_long,l_lat, case when rem_battery>0 then rem_battery when rem_battery<0 then '0' end as rem_battery1 " + ", case when rem_battery <=5 then 'Batterylow' else " + "case when DATEDIFF(MINUTE,CONVERT(VARCHAR(19), GETDATE(),120),replace(l_date,'/','-') + ' ' + l_time) < -60 then 'Offline' else 'Online' end end as [status] " + ", replace(Convert(varchar(15),Convert(date,l_date),106),' ','-') ,Convert(char(8),Convert(time,l_time,109)) " + " from location l, users u WHERE l.userid=u.userid and CONVERT(date, l_date) = CONVERT(date, getdate(), 101) and l_lat <> '' and l_lat is not null and RcM='" + Session["sess_username"] + "'order by userid , L_time desc"; //sql = "SELECT * ,case when rem_battery>0 then rem_battery when rem_battery<0 then '0' end as rem_battery1 " + // ",case when rem_battery <=5 then 'Batterylow' else "+ // "case when DATEDIFF(MINUTE,CONVERT(VARCHAR(19), GETDATE(),120),replace(l_date,'/','-') + ' ' + l_time) < -60 then 'Offline' else 'Online' end end "+ // "FROM(SELECT locationHist.*, ROW_NUMBER() OVER (PARTITION BY l_date, userid ORDER BY CONVERT(date, l_date) desc) AS RN " + // "FROM locationHist WHERE CONVERT(date, l_date) = CONVERT(date, getdate(), 101)) AS t " + // "WHERE RN = 1"; } else { sql = "select Top 1 userid,l_long,l_lat, case when rem_battery>0 then rem_battery when rem_battery<0 then '0' end as rem_battery1 " + " , case when rem_battery <=5 then 'Batterylow' else " + "case when DATEDIFF(MINUTE,CONVERT(VARCHAR(19), GETDATE(),120),replace(l_date,'/','-') + ' ' + l_time) < -60 then 'Offline' else 'Online' end end as [status] " + ", replace(Convert(varchar(15),Convert(date,l_date),106),' ','-') , Convert(char(8),Convert(time,l_time,109))" + "from location where userid='" + uid + "' and CONVERT(date, l_date) = CONVERT(date, getdate(), 101) and l_lat <> '' and l_lat is not null order by userid , L_time desc"; //sql = "SELECT Top 1 * ,case when rem_battery>0 then rem_battery when rem_battery<0 then '0' end as rem_battery1 " + // ",case when rem_battery <=5 then 'Batterylow' else " + // "case when DATEDIFF(MINUTE,CONVERT(VARCHAR(19), GETDATE(),120),replace(l_date,'/','-') + ' ' + l_time) < -60 then 'Offline' else 'Online' end end " + // "FROM(SELECT location.*, ROW_NUMBER() OVER (PARTITION BY l_date, userid ORDER BY CONVERT(date, l_date) desc) AS RN " + // "FROM location where userid='" + uid + "' and l_date=(select MAX(L_date) from locationHist " + // "where userid='" + uid + "')) AS t " + // "WHERE RN = 1"; } } else { uid = ddofficer.SelectedValue; lblusername.Text = "Location of " + uid; if (ddofficer.SelectedValue == "ALL") { //sql = "select top 5 *, case when rem_battery>0 then rem_battery when rem_battery<0 then '0' end as rem_battery1 " + // ",case when rem_battery <=5 then 'Batterylow' else " + // "case when DATEDIFF(MINUTE,CONVERT(VARCHAR(19), GETDATE(),120),replace(l_date,'/','-') + ' ' + l_time) < -60 then 'Offline' else 'Online' end end " + // "from locationHist where l_date='" + txt_frmDate.Text + "'"; //Response.Write(txt_frmDate.Text + System.DateTime.Today.ToString("MM'/'dd'/'yyyy")); if (txt_frmDate.Text == System.DateTime.Today.ToString("MM'/'dd'/'yyyy")) { sql = "SELECT userid,l_long,l_lat,case when rem_battery>0 then rem_battery when rem_battery<0 then '0' end as rem_battery1 " + ", case when rem_battery <=5 then 'Batterylow' else " + "case when DATEDIFF(MINUTE,CONVERT(VARCHAR(19), GETDATE(),120),replace(l_date,'/','-') + ' ' + l_time) < -60 then 'Offline' else 'Online' end end as [status] " + ", replace(Convert(varchar(15),Convert(date,l_date),106),' ','-') , Convert(char(8),Convert(time,l_time,109))" + "FROM(SELECT location.*, ROW_NUMBER() OVER (PARTITION BY l_date, userid ORDER BY CONVERT(date, l_date) desc, L_time desc) AS RN " + "FROM location WHERE l_date = '" + txt_frmDate.Text + "' and l_lat <> '' and l_lat is not null) AS t " + "WHERE RN = 1 and userid in (select userid from users where RCM = '" + Session["sess_username"] + "') order by userid "; } else { sql = "SELECT userid,l_long,l_lat,case when rem_battery>0 then rem_battery when rem_battery<0 then '0' end as rem_battery1 " + ", case when rem_battery <=5 then 'Batterylow' else " + "case when DATEDIFF(MINUTE,CONVERT(VARCHAR(19), GETDATE(),120),replace(l_date,'/','-') + ' ' + l_time) < -60 then 'Offline' else 'Online' end end as [status] " + ", replace(Convert(varchar(15),Convert(date,l_date),106),' ','-') , Convert(char(8),Convert(time,l_time,109))" + "FROM(SELECT locationHist.*, ROW_NUMBER() OVER (PARTITION BY l_date, userid ORDER BY CONVERT(date, l_date) desc, L_time desc) AS RN " + "FROM locationHist WHERE l_date = '" + txt_frmDate.Text + "' and l_lat <> '' and l_lat is not null) AS t " + "WHERE RN = 1 and userid in (select userid from users where RCM = '" + Session["sess_username"] + "') order by userid"; } } else { //sql = "select Top 1 *, case when rem_battery>0 then rem_battery when rem_battery<0 then '0' end as rem_battery1 " + //",case when rem_battery <=5 then 'Batterylow' else " + //" case when DATEDIFF(MINUTE,CONVERT(VARCHAR(19), GETDATE(),120),replace(l_date,'/','-') + ' ' + l_time) < -60 then 'Offline' else 'Online' end end "+ //"from locationHist where userid='" + uid + "' and (l_date='" + txt_frmDate.Text + "')"; if (txt_frmDate.Text == System.DateTime.Today.ToString("MM'/'dd'/'yyyy")) { sql = "SELECT Top 1 userid,l_long,l_lat, case when rem_battery>0 then rem_battery when rem_battery<0 then '0' end as rem_battery1 " + ",case when rem_battery <=5 then 'Batterylow' else " + "case when DATEDIFF(MINUTE,CONVERT(VARCHAR(19), GETDATE(),120),replace(l_date,'/','-') + ' ' + l_time) < -60 then 'Offline' else 'Online' end end as [status] " + ", replace(Convert(varchar(15),Convert(date,l_date),106),' ','-') , Convert(char(8),Convert(time,l_time,109))" + "FROM(SELECT location.*, ROW_NUMBER() OVER (PARTITION BY l_date, userid ORDER BY CONVERT(date, l_date) desc, L_time desc) AS RN " + "FROM location where userid='" + uid + "' and (l_date='" + txt_frmDate.Text + "') and l_lat <> '' and l_lat is not null) AS t " + "WHERE RN = 1"; //sql = "select Top 1 userid,l_long,l_lat, case when rem_battery>0 then rem_battery when rem_battery<0 then '0' end as rem_battery1 " + //",case when rem_battery <=5 then 'Batterylow' else " + //" case when DATEDIFF(MINUTE,CONVERT(VARCHAR(19), GETDATE(),120),replace(l_date,'/','-') + ' ' + l_time) < -60 then 'Offline' else 'Online' end end " + //", replace(Convert(varchar(15),Convert(date,l_date),106),' ','-') " + //"from location where userid='" + uid + "' and (l_date='" + txt_frmDate.Text + "')"; } else { sql = "SELECT Top 1 userid,l_long,l_lat, case when rem_battery>0 then rem_battery when rem_battery<0 then '0' end as rem_battery1 " + ",case when rem_battery <=5 then 'Batterylow' else " + "case when DATEDIFF(MINUTE,CONVERT(VARCHAR(19), GETDATE(),120),replace(l_date,'/','-') + ' ' + l_time) < -60 then 'Offline' else 'Online' end end as [status] " + ", replace(Convert(varchar(15),Convert(date,l_date),106),' ','-') , Convert(char(8),Convert(time,l_time,109))" + "FROM(SELECT locationHist.*, ROW_NUMBER() OVER (PARTITION BY l_date, userid ORDER BY CONVERT(date, l_date) desc, L_time desc) AS RN " + "FROM locationHist where userid='" + uid + "' and (l_date='" + txt_frmDate.Text + "') and l_lat <> '' and l_lat is not null) AS t " + "WHERE RN = 1"; } } } //Response.Write(sql); DataTable dt = new DataTable(); SqlCommand cmd = new SqlCommand(sql); dt = bucket.GetData(cmd); string x = ""; string markers = ""; string zoomstr = ""; if (dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { //if (dt.Rows[i][4].ToString() == "Offline") //{ // markers += "var r = GetResults(" + dt.Rows[i][2].ToString() + ", " + dt.Rows[i][1].ToString() + ");" + "\n" + // "var feature = new OpenLayers.Feature.Vector(" + "\n" + // "new OpenLayers.Geometry.Point(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo)," + // "{ description: 'UserID : " + dt.Rows[i][0].ToString() + " <br/> Location : '+ r.features[0].properties.label +'<br/>Battery : " + dt.Rows[i][3].ToString() + "%<br/>Date : " + dt.Rows[i][5].ToString() + " " + dt.Rows[i][6].ToString() + "'}," + // //"{ description: 'Location : ' + '" + bucket.filterText(dt.Rows[i][5].ToString().TrimStart(',')) + "' }," + // "{ externalGraphic: 'Image/man-red.png', graphicHeight: 35, graphicWidth: 35, graphicXOffset: -12, graphicYOffset: -25 });" + "\n" + // "vectorLayer.addFeatures(feature);" + "\n"; //} //else if (dt.Rows[i][4].ToString() == "Batterylow") //{ // markers += "var r = GetResults(" + dt.Rows[i][2].ToString() + ", " + dt.Rows[i][1].ToString() + ");" + "\n" + // "var feature = new OpenLayers.Feature.Vector(" + "\n" + // "new OpenLayers.Geometry.Point(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo)," + // "{ description: 'UserID : " + dt.Rows[i][0].ToString() + " <br/> Location : '+ r.features[0].properties.label +'<br/>Battery : " + dt.Rows[i][3].ToString() + "%<br/>Date : " + dt.Rows[i][5].ToString() + " " + dt.Rows[i][6].ToString() + "'}," + // //"{ description: 'Location : ' + '" + bucket.filterText(dt.Rows[i][5].ToString().TrimStart(',')) + "' }," + // "{ externalGraphic: 'Image/man-orange.png', graphicHeight: 35, graphicWidth: 35, graphicXOffset: -12, graphicYOffset: -25 });" + "\n" + // "vectorLayer.addFeatures(feature);" + "\n"; //} //else //{ // markers += "var r = GetResults(" + dt.Rows[i][2].ToString() + ", " + dt.Rows[i][1].ToString() + ");" + "\n" + // "var feature = new OpenLayers.Feature.Vector(" + "\n" + // "new OpenLayers.Geometry.Point(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo)," + // "{ description: 'UserID : " + dt.Rows[i][0].ToString() + " <br/> Location : '+ r.features[0].properties.label +'<br/>Battery : " + dt.Rows[i][3].ToString() + "%<br/>Date : " + dt.Rows[i][5].ToString() + " " + dt.Rows[i][6].ToString() + "'}," + // //"{ description: 'Location : ' + '" + bucket.filterText(dt.Rows[i][5].ToString().TrimStart(',')) + "' }," + // "{ externalGraphic: 'Image/man-green.png', graphicHeight: 35, graphicWidth: 35, graphicXOffset: -12, graphicYOffset: -25 });" + "\n" + // "vectorLayer.addFeatures(feature);" + "\n"; //} if (dt.Rows[i][4].ToString() == "Offline") { markers += "var r = GetResults(" + dt.Rows[i][2].ToString() + ", " + dt.Rows[i][1].ToString() + ");" + "\n" + "try {" + "var feature = new OpenLayers.Feature.Vector(" + "\n" + "new OpenLayers.Geometry.Point(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo)," + "{ description: 'UserID : " + dt.Rows[i][0].ToString() + " <br/> Location : '+ r.features[0].properties.label +'<br/>Battery : " + dt.Rows[i][3].ToString() + "%<br/>Date : " + dt.Rows[i][5].ToString() + " " + dt.Rows[i][6].ToString() + "'}," + //"{ description: 'Location : ' + '" + bucket.filterText(dt.Rows[i][5].ToString().TrimStart(',')) + "' }," + "{ externalGraphic: 'Image/man-red.png', graphicHeight: 35, graphicWidth: 35, graphicXOffset: -12, graphicYOffset: -25 });" + "\n" + "vectorLayer.addFeatures(feature);" + "\n" + "} catch(ee){" + "var feature = new OpenLayers.Feature.Vector(" + "\n" + "new OpenLayers.Geometry.Point(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo)," + "{ description: 'UserID : " + dt.Rows[i][0].ToString() + " <br/> Location : NA <br/>Battery : " + dt.Rows[i][3].ToString() + "%<br/>Date : " + dt.Rows[i][5].ToString() + " " + dt.Rows[i][6].ToString() + "'}," + //"{ description: 'Location : ' + '" + bucket.filterText(dt.Rows[i][5].ToString().TrimStart(',')) + "' }," + "{ externalGraphic: 'Image/man-red.png', graphicHeight: 35, graphicWidth: 35, graphicXOffset: -12, graphicYOffset: -25 });" + "\n" + "vectorLayer.addFeatures(feature);}" + "\n"; } else if (dt.Rows[i][4].ToString() == "Batterylow") { markers += "var r = GetResults(" + dt.Rows[i][2].ToString() + ", " + dt.Rows[i][1].ToString() + ");" + "\n" + "try {" + "var feature = new OpenLayers.Feature.Vector(" + "\n" + "new OpenLayers.Geometry.Point(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo)," + "{ description: 'UserID : " + dt.Rows[i][0].ToString() + " <br/> Location : '+ r.features[0].properties.label +'<br/>Battery : " + dt.Rows[i][3].ToString() + "%<br/>Date : " + dt.Rows[i][5].ToString() + " " + dt.Rows[i][6].ToString() + "'}," + //"{ description: 'Location : ' + '" + bucket.filterText(dt.Rows[i][5].ToString().TrimStart(',')) + "' }," + "{ externalGraphic: 'Image/man-orange.png', graphicHeight: 35, graphicWidth: 35, graphicXOffset: -12, graphicYOffset: -25 });" + "\n" + "vectorLayer.addFeatures(feature);" + "\n" + "} catch(ee){" + "var feature = new OpenLayers.Feature.Vector(" + "\n" + "new OpenLayers.Geometry.Point(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo)," + "{ description: 'UserID : " + dt.Rows[i][0].ToString() + " <br/> Location : NA <br/>Battery : " + dt.Rows[i][3].ToString() + "%<br/>Date : " + dt.Rows[i][5].ToString() + " " + dt.Rows[i][6].ToString() + "'}," + //"{ description: 'Location : ' + '" + bucket.filterText(dt.Rows[i][5].ToString().TrimStart(',')) + "' }," + "{ externalGraphic: 'Image/man-orange.png', graphicHeight: 35, graphicWidth: 35, graphicXOffset: -12, graphicYOffset: -25 });" + "\n" + "vectorLayer.addFeatures(feature);}" + "\n"; } else { markers += "var r = GetResults(" + dt.Rows[i][2].ToString() + ", " + dt.Rows[i][1].ToString() + ");" + "\n" + "try {" + "var feature = new OpenLayers.Feature.Vector(" + "\n" + "new OpenLayers.Geometry.Point(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo)," + "{ description: 'UserID : " + dt.Rows[i][0].ToString() + " <br/> Location : '+ r.features[0].properties.label +'<br/>Battery : " + dt.Rows[i][3].ToString() + "%<br/>Date : " + dt.Rows[i][5].ToString() + " " + dt.Rows[i][6].ToString() + "'}," + //"{ description: 'Location : ' + '" + bucket.filterText(dt.Rows[i][5].ToString().TrimStart(',')) + "' }," + "{ externalGraphic: 'Image/man-green.png', graphicHeight: 35, graphicWidth: 35, graphicXOffset: -12, graphicYOffset: -25 });" + "\n" + "vectorLayer.addFeatures(feature);" + "\n" + "} catch(ee){" + "var feature = new OpenLayers.Feature.Vector(" + "\n" + "new OpenLayers.Geometry.Point(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo)," + "{ description: 'UserID : " + dt.Rows[i][0].ToString() + " <br/> Location : NA <br/>Battery : " + dt.Rows[i][3].ToString() + "%<br/>Date : " + dt.Rows[i][5].ToString() + " " + dt.Rows[i][6].ToString() + "'}," + //"{ description: 'Location : ' + '" + bucket.filterText(dt.Rows[i][5].ToString().TrimStart(',')) + "' }," + "{ externalGraphic: 'Image/man-green.png', graphicHeight: 35, graphicWidth: 35, graphicXOffset: -12, graphicYOffset: -25 });" + "\n" + "vectorLayer.addFeatures(feature);}" + "\n"; } if (ddofficer.SelectedValue == "ALL") { zoomstr = "var lonLat = new OpenLayers.LonLat(77.2658031,23.1996633).transform(epsg4326, projectTo);" + "\n" + "var zoom = 4;" + "\n"; } else { zoomstr = "var lonLat = new OpenLayers.LonLat(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo);" + "\n" + "var zoom = 17;" + "\n"; } } Label1.Visible = false; } else { Label1.Visible = true; } x = @" <script src=" + Convert.ToChar(34) + "http://openlayers.org/api/OpenLayers.js" + Convert.ToChar(34) + "></script> <script src=" + Convert.ToChar(34) + "https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js" + Convert.ToChar(34) + "></script>" + "<script>" + "\n" + "function GetResults(lat, long) {" + "\n" + "var jsonObjectInstance = $.parseJSON($.ajax({" + "\n" +//Transovative && Transo@123 mapzen // [email protected] && Trans123 " url: 'https://search.mapzen.com/v1/reverse?api_key=search-BST68nm&point.lat='+lat+'&point.lon='+long+'&size=1'," + "\n" + " async: false," + "\n" + "dataType: 'json'" + "\n" + "}).responseText); return jsonObjectInstance" + "\n" + "}" + "\n" + "map = new OpenLayers.Map(" + Convert.ToChar(34) + "basicMap" + Convert.ToChar(34) + ");" + "\n" + "map.addLayer(new OpenLayers.Layer.OSM());" + "\n" + "epsg4326 = new OpenLayers.Projection(" + Convert.ToChar(34) + "EPSG:4326" + Convert.ToChar(34) + ");" + "\n" + //WGS 1984 projection "projectTo = map.getProjectionObject(); " + "\n" + //The map projection (Spherical Mercator) //"var lonLat = new OpenLayers.LonLat(77.2658031,23.1996633).transform(epsg4326, projectTo);" + "\n" + //"var zoom = 4;" + "\n" + zoomstr + "map.setCenter(lonLat, zoom);" + "\n" + "var vectorLayer = new OpenLayers.Layer.Vector(" + Convert.ToChar(34) + "Overlay" + Convert.ToChar(34) + ");" + "\n" + markers + "map.addLayer(vectorLayer);" + "\n" + //Add a selector control to the vectorLayer with popup functions "var controls = {" + "\n" + "selector: new OpenLayers.Control.SelectFeature(vectorLayer, { onSelect: createPopup, onUnselect: destroyPopup })" + "\n" + "};" + "\n" + "function createPopup(feature) {" + "\n" + "feature.popup = new OpenLayers.Popup.FramedCloud(" + Convert.ToChar(34) + "pop" + Convert.ToChar(34) + "," + "\n" + "feature.geometry.getBounds().getCenterLonLat()," + "\n" + "null," + "\n" + "'<div class=" + Convert.ToChar(34) + "markerContent" + Convert.ToChar(34) + ">' + feature.attributes.description + '</div>'," + "\n" + "null," + "\n" + "true," + "\n" + "function () { controls['selector'].unselectAll(); }" + "\n" + ");" + "\n" + //feature.popup.closeOnMove = true; "map.addPopup(feature.popup);" + "\n" + "}" + "\n" + "function destroyPopup(feature) {" + "\n" + "feature.popup.destroy();" + "\n" + "feature.popup = null;" + "\n" + "}" + "\n" + "map.addControl(controls['selector']);" + "\n" + "controls['selector'].activate();" + "\n" + "</script>"; Session["sess_x"] = x; }
public void createOSMMap() { var officername = ""; string strmap = ""; try { hdnlocation.Value = Request.Form[ddofficer.UniqueID]; if (hdnlocation.Value == null || hdnlocation.Value == "") { officername = "%"; } else { officername = hdnlocation.Value; } string s1 = "", s2 = ""; s1 = @"select distinct l.userid,L_lat,L_Long, case when rem_battery>0 then rem_battery when rem_battery<0 then '0' end as rem_battery1, case when l.rem_battery <=5 then 'Batterylow' else case when DATEDIFF(MINUTE,replace(l.b_date,'/','-') + ' ' + l.l_time,CONVERT(VARCHAR(19), GETDATE(),120)) > 60 then 'Offline' else 'Online' end end as [Status], l_Date,l_time, isnull(u.mobile,'NA'),username from location l inner join users u on l.userid = u.userid where u.userid like '%" + officername + @"%' and (l_lat<>'0') and l_date = '" + txt_frmDate.Text + "' and ( l_long<> '0') and l_lat is not null and l_long is not null and u.status <> 'DEL'"; s2 = @"select distinct u.unitid,LTRIM(RTRIM(unitlat)),LTRIM(RTRIM(unitlong)),u.unitname,case when type='CMS' then 'CMS' else 'NONCMS' end as type, location,region,'','','','','' from unit u where unitlat is not null and unitlat not like '' and unitlat <> '0.0' and unitlat <> '0' and unitlat<> '1..' and unitlat <> 'NULL' and u.status <> 'Inactive'" ; string qry = @""; qry = s1; //Response.Write(qry); SqlCommand cmd = new SqlCommand(qry); DataTable dt = bucket.GetData(cmd); //string userpropic = ""; string markers = ""; string usercoords = ""; string usercoor = ""; for (int i = 0; i < dt.Rows.Count; i++) { // markers += "{ " + "\"title\"" + ": '" + dt.Rows[i][0].ToString().Trim().Replace("'", "") + "' ," + "\"lat\"" + ": '" + dt.Rows[i][1].ToString().Trim() + "' ," + "\"lng\"" + ": '" + dt.Rows[i][2].ToString().Trim() + "' ," + "\"description\"" + ": 'Name : " + dt.Rows[i][8] + " <br/> Mobile No : " + dt.Rows[i][7] + " <br/> Date Time : " + dt.Rows[i][5].ToString().Trim().Replace("'", "") + " - " + dt.Rows[i][6].ToString().Trim().Replace("'", "") + " <br/> Status : " + dt.Rows[i][4] + " <br/> Battery Remaining : " + dt.Rows[i][3] + "' ," + "\"type\"" + ": '" + dt.Rows[i][4] + "'," + "\"unitdescp\"" + ": 'Unit Name : " + dt.Rows[i][3].ToString().Trim().Replace("'", "") + " <br/> Location : " + dt.Rows[i][5].ToString().Trim().Replace("'", "") + " <br/> Region : " + dt.Rows[i][6] + " <br/> Site Type : " +dt.Rows[i][4].ToString().ToUpper().Replace("NONCMS","NON-CMS")+"'},"; markers += "{ " + "\"title\"" + ": '" + dt.Rows[i][0].ToString().Trim().Replace("'", "") + @"' , " + "\"lat\"" + ": '" + dt.Rows[i][1].ToString().Trim() + "' ," + "\"lng\"" + ": '" + dt.Rows[i][2].ToString().Trim() + @"' , 'Name : " + dt.Rows[i][8] + " <br/> Mobile No : " + dt.Rows[i][7] + " <br/> Date Time : " + dt.Rows[i][5].ToString().Trim().Replace("'", "") + " - " + dt.Rows[i][6].ToString().Trim().Replace("'", "") + " <br/> Status : " + dt.Rows[i][4] + " <br/> Battery Remaining : " + dt.Rows[i][3] + "' ," + "\"type\"" + ": '" + dt.Rows[i][4] + @"' <br/>}"; usercoords += "ol.proj.transform([" + dt.Rows[i][2].ToString() + "," + dt.Rows[i][1].ToString() + "], 'EPSG:4326','EPSG:3857'),"; usercoor += "['" + dt.Rows[i][0].ToString().Trim().Replace("'", "") + "'," + dt.Rows[i][1].ToString() + "," + dt.Rows[i][2].ToString() + ",'" + dt.Rows[i][3].ToString() + "','" + dt.Rows[i][4].ToString().ToUpper().Replace("NONCMS", "NON-CMS") + "','" + dt.Rows[i][5].ToString().Trim().Replace("'", "") + "','" + dt.Rows[i][6].ToString() + "','" + dt.Rows[i][7].ToString() + "','" + dt.Rows[i][8].ToString() + "'],"; //Response.Write(usercoor+"<br/>"); } strmap = @"<script> // setTimeout(function(){ debugger; var sourceFeatures = new ol.source.Vector(), layerFeatures = new ol.layer.Vector({ source: sourceFeatures }); var container = document.getElementById('popup'); var content = document.getElementById('popup-content'); var closer = document.getElementById('popup-closer'); var overlay = new ol.Overlay(/** @type {olx.OverlayOptions} */({ element: container, autoPan: true, autoPanAnimation: { duration: 250 } })); closer.onclick = function () { document.getElementById('popup-content').innerHTML = ''; overlay.setPosition(undefined); closer.blur(); return false; }; var lineString = new ol.geom.LineString([]); var layerRoute = new ol.layer.Vector({ source: new ol.source.Vector({ features: [ new ol.Feature({ geometry: lineString }) ] }), style: [ new ol.style.Style({ stroke: new ol.style.Stroke({ width: 3, color: 'rgba(255, 0, 0, 1)' //lineDash: [.1, 5] }), zIndex: 2 }) ], updateWhileAnimating: true }); var loc = [" + usercoords + @"]; var map = new ol.Map({ target: 'map', view: new ol.View({ center: loc[0], zoom: 16, minZoom: 2, maxZoom: 20 }), layers: [ new ol.layer.Tile({ source: new ol.source.OSM(), opacity: 0.6 }), layerRoute, layerFeatures ], overlays: [overlay] }); var view = map.getView(); var extent = ol.extent.boundingExtent([" + usercoords + @"]); var size = map.getSize(); view.fit(extent, size); if (view.getZoom() > 16) { view.setZoom(9); } var userCoor = [ " + usercoor.TrimEnd(',') + @"]; var iconFeatures = []; var j=0; var iconBase = 'http://maps.google.com/mapfiles/ms/icons/'; for (i = 0; i < userCoor.length; i++) { //debugger; if(userCoor[i][4]== 'ONLINE') { var iconFeature = new ol.Feature({ geometry: new ol.geom.Point(loc[i]),//ol.proj.transform([-72.0704, 46.678], 'EPSG:4326','EPSG:3857')), name: '<table><tr><td> User ID : '+userCoor[i][0]+'<br/>Name : '+userCoor[i][8]+'<br/>Mobile No : '+userCoor[i][7]+'<br/>Date Time : '+userCoor[i][5]+' - '+userCoor[i][6]+'<br/>Status : '+userCoor[i][4]+'<br/>Battery Remaining : '+userCoor[i][3]+'%</td></tr></table>', type:'user', population: 4000, rainfall: 500 }); iconFeature.setStyle(new ol.style.Style({ image: new ol.style.Icon(/** @type {olx.style.IconOptions} */({ //color: '#8959A8', //crossOrigin: 'anonymous', anchor: [0.5, 30], anchorXUnits: 'fraction', anchorYUnits: 'pixels', src: './Image/man-green.png' })) })); iconFeatures.push(iconFeature); } else if(userCoor[i][4] == 'OFFLINE') { var iconFeature = new ol.Feature({ geometry: new ol.geom.Point(loc[i]),//ol.proj.transform([-72.0704, 46.678], 'EPSG:4326','EPSG:3857')), name: '<table><tr><td> User ID : '+userCoor[i][0]+'<br/>Name : '+userCoor[i][8]+'<br/>Mobile No : '+userCoor[i][7]+'<br/>Date Time : '+userCoor[i][5]+' - '+userCoor[i][6]+'<br/>Status : '+userCoor[i][4]+'<br/>Battery Remaining : '+userCoor[i][3]+'%</td></tr></table>', type:'user', population: 4000, rainfall: 500 }); iconFeature.setStyle(new ol.style.Style({ image: new ol.style.Icon(/** @type {olx.style.IconOptions} */({ //color: '#8959A8', //crossOrigin: 'anonymous', anchor: [0.5, 30], anchorXUnits: 'fraction', anchorYUnits: 'pixels', src: './Image/man-red.png' })) })); iconFeatures.push(iconFeature); } else if(userCoor[i][4] == 'BATTERYLOW'){ var iconFeature = new ol.Feature({ geometry: new ol.geom.Point(loc[i]),//ol.proj.transform([-72.0704, 46.678], 'EPSG:4326','EPSG:3857')), name: '<table><tr><td> User ID : '+userCoor[i][0]+'<br/>Name : '+userCoor[i][8]+'<br/>Mobile No : '+userCoor[i][7]+'<br/>Date Time : '+userCoor[i][5]+' - '+userCoor[i][6]+'<br/>Status : '+userCoor[i][4]+'<br/>Battery Remaining : '+userCoor[i][3]+'%</td></tr></table>', type:'user', population: 4000, rainfall: 500 }); iconFeature.setStyle(new ol.style.Style({ image: new ol.style.Icon(/** @type {olx.style.IconOptions} */({ //color: '#8959A8', //crossOrigin: 'anonymous', anchor: [0.5, 30], anchorXUnits: 'fraction', anchorYUnits: 'pixels', src: './Image/man-orange.png' })) })); iconFeatures.push(iconFeature); } } debugger; // var iconFeature1 = new ol.Feature({ // geometry: new ol.geom.Point(loc[1]), // name: 'Null Island Two', // population: 4001, // rainfall: 501 // }); // // iconFeature1.setStyle(new ol.style.Style({ // image: new ol.style.Icon(/** @type {olx.style.IconOptions} */({ // // color: '#8959A8', // //crossOrigin: 'anonymous', // anchor: [0.5, 30], // anchorXUnits: 'fraction', // anchorYUnits: 'pixels', // src: 'http://maps.google.com/mapfiles/ms/icons/red-dot.png' // })) // })); // // iconFeatures.push(iconFeature1); var vectorSource = new ol.source.Vector({ features: iconFeatures //add an array of features }); var iconStyle = new ol.style.Style({ image: new ol.style.Icon(/** @type {olx.style.IconOptions} */({ anchor: [0.5, 46], anchorXUnits: 'fraction', anchorYUnits: 'pixels', opacity: 0.75, src: 'http://openlayers.org/en/v3.9.0/examples/data/icon.png', })) }); var vectorLayer = new ol.layer.Vector({ source: vectorSource, //style: iconStyle }); map.addOverlay(vectorLayer); var markerEl = document.getElementById('geo-marker'); var marker = new ol.Overlay({ positioning: 'center-center', offset: [5, 0], element: markerEl, stopEvent: false }); var element = document.getElementById('popupinfo'); var popup = new ol.Overlay({ element: element, positioning: 'bottom-center', stopEvent: false, offset: [9, -21] }); map.addOverlay(popup); map.on('click', function (evt) { var feature = map.forEachFeatureAtPixel(evt.pixel, function (feature) { return feature; }); if (feature) { var coordinates = feature.getGeometry().getCoordinates(); var longlat = ol.proj.transform(coordinates, 'EPSG:3857', 'EPSG:4326'); popup.setPosition(coordinates); if(feature.get('type')=='atm') { content.innerHTML = '<p>'+ feature.get('name')+ '</p>'; } else if(feature.get('type')=='user') { var sid = GetResults(longlat[1], longlat[0]); //var sid='brijesh'; content.innerHTML = '<p>'+ feature.get('name')+ '<br/>'+'Address : '+ sid.display_name+'</p>'; } // var sid = GetResults(longlat[1], longlat[0]); // content.innerHTML = feature.get('name')+ 'Address : '+ sid.display_name; overlay.setPosition(coordinates); } else { overlay.setPosition(undefined); closer.blur(); } // $(element).popover({ // 'placement': 'top', // 'html': true, // 'content': 'Siteid : '+feature.get('name')+'<br/>Address : '+ sid.display_name //feature.get('name') // }); // $(element).popover('show'); // } else { // $(element).popover('destroy'); // } }); map.addOverlay(marker); var fill = new ol.style.Fill({ color: 'rgba(255,255,255,1)' }), stroke = new ol.style.Stroke({ color: 'rgba(0,0,0,1)' }), style1 = [ new ol.style.Style({ image: new ol.style.Circle({ radius: 6, fill: fill, stroke: stroke }), zIndex: 4 }) ]; //}, 300); function GetResults(lat, long) { var jsonObjectInstance = $.parseJSON($.ajax({ url: 'https://locationiq.org/v1/reverse.php?format=json&key=9c73f8c9ed5d47&lat=' + lat + '&lon=' + long, async: false, dataType: 'json' }).responseText); return jsonObjectInstance } </script>"; if (dt.Rows.Count <= 0) { strmap = @"No details found.." + @"<script> var container = document.getElementById('popup'); var geo = document.getElementById('geo-marker'); container.style.display = 'none'; geo.style.display = 'none'; </script>"; } } catch (Exception) { strmap = "No details found.." + @"<script> var container = document.getElementById('popup'); var geo = document.getElementById('geo-marker'); container.style.display = 'none'; geo.style.display = 'none'; </script>"; } map.InnerHtml = strmap; }
public string drawmap() { string mapstr = ""; try { ibuckethead bucket = new ibuckethead(); string rows; string qry = @"select u.username,l.l_lat,l.l_long,l.Rem_Battery, case when l.rem_battery <=5 then 'Batterylow' else case when DATEDIFF(MINUTE,CONVERT(VARCHAR(19), GETDATE(),120),replace(l.b_date,'/','-') + ' ' + l.l_time) < -60 then 'Offline' else 'Online' end end as[Status],substring(b_date,4,3) + substring(b_date,1,2)+ substring(b_date,6,5) + ' ' + b_time as [Last Updated On] from location l inner join users u on l.userid = u.userid where l_lat <>'0' and l_long <>'0'"; if (Session["sess_role"].ToString() == "AO") { qry += " and u.userid in (select userid from AreaUserMap where area in (select area from AreaUserMap where userid='" + Session["sess_userid"].ToString() + "'))"; } else if (Session["sess_role"].ToString() == "BM") { qry += " and u.Branch in (Select Branch from users where userid = '" + Session["sess_userid"].ToString() + "')"; } else if (Session["sess_role"].ToString() == "REGION") { qry += " and u.REGION in (Select REGION from users where userid = '" + Session["sess_userid"].ToString() + "')"; } SqlCommand cmd = new SqlCommand(qry); DataTable dt = bucket.GetData(cmd); string usercoor = ""; string marker = ""; if (dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { //usercoor += "ol.proj.transform([" + dt.Rows[i][4].ToString() + "," + dt.Rows[i][3].ToString() + "], 'EPSG:4326','EPSG:3857'),"; usercoor += "ol.proj.transform([" + dt.Rows[i][2].ToString() + "," + dt.Rows[i][1].ToString() + "], 'EPSG:4326','EPSG:3857'),"; marker += @"var iconFeature" + i + @" = new ol.Feature({ geometry: new ol.geom.Point(loc[" + i + @"]), name: '" + dt.Rows[i][0].ToString() + @"', LastUpdatedOn: '" + dt.Rows[i][5].ToString() + @"', rainfall: 501 }); iconFeature" + i + @".setStyle(new ol.style.Style({ image: new ol.style.Icon(/** @type {olx.style.IconOptions} */({ // color: '#8959A8', //crossOrigin: 'anonymous', anchor: [0.5, 30], anchorXUnits: 'fraction', anchorYUnits: 'pixels', "; if (dt.Rows[i][4].ToString() == "Batterylow") { marker += "src: '../Image/man-orange.png'"; } else if (dt.Rows[i][4].ToString() == "Offline") { marker += "src: '../Image/man-red.png'"; } else if (dt.Rows[i][4].ToString() == "Online") { marker += "src: '../Image/man-green.png'"; } marker += @" })) })); iconFeatures.push(iconFeature" + i + @");"; } } mapstr = @"<script> setTimeout(function(){ var container = document.getElementById('popup'); var content = document.getElementById('popup-content'); var closer = document.getElementById('popup-closer'); var overlay = new ol.Overlay(/** @type {olx.OverlayOptions} */({ element: container, autoPan: true, autoPanAnimation: { duration: 250 } })); closer.onclick = function () { document.getElementById('popup-content').innerHTML = ''; overlay.setPosition(undefined); closer.blur(); return false; }; var lineString = new ol.geom.LineString([]); var layerRoute = new ol.layer.Vector({ source: new ol.source.Vector({ features: [ new ol.Feature({ geometry: lineString }) ] }), style: [ new ol.style.Style({ stroke: new ol.style.Stroke({ width: 3, color: 'rgba(255, 0, 0, 1)' }), zIndex: 2 }) ], updateWhileAnimating: true }); var loc = [" + usercoor + @"]; var map = new ol.Map({ target: 'map', view: new ol.View({ center: loc[0], zoom: 16, minZoom: 2, maxZoom: 20 }), layers: [ new ol.layer.Tile({ source: new ol.source.OSM(), opacity: 0.6 }) ], overlays: [overlay] }); var view = map.getView(); var extent = ol.extent.boundingExtent([" + usercoor + @"]); var size = map.getSize(); view.fit(extent, size); if (view.getZoom() > 16) { view.setZoom(9); } var iconFeatures = []; " + marker + @" var vectorSource = new ol.source.Vector({ features: iconFeatures //add an array of features }); var iconStyle = new ol.style.Style({ image: new ol.style.Icon(/** @type {olx.style.IconOptions} */({ anchor: [0.5, 46], anchorXUnits: 'fraction', anchorYUnits: 'pixels', opacity: 0.75, src: 'http://openlayers.org/en/v3.9.0/examples/data/icon.png', })) }); var vectorLayer = new ol.layer.Vector({ source: vectorSource, //style: iconStyle }); map.addOverlay(vectorLayer); var markerEl = document.getElementById('geo-marker'); var marker = new ol.Overlay({ positioning: 'center-center', offset: [5, 0], element: markerEl, stopEvent: false }); var element = document.getElementById('popupinfo'); var popup = new ol.Overlay({ element: element, positioning: 'bottom-center', stopEvent: false, offset: [9, -21] }); map.addOverlay(popup); map.on('click', function (evt) { var feature = map.forEachFeatureAtPixel(evt.pixel, function (feature) { return feature; }); if (feature) { var coordinates = feature.getGeometry().getCoordinates(); var longlat = ol.proj.transform(coordinates, 'EPSG:3857', 'EPSG:4326'); popup.setPosition(coordinates); var sid = GetResults(longlat[1], longlat[0]); //var sid = ''; content.innerHTML = '<p>User Name : '+ feature.get('name')+ '<br/>Last Updated On : '+feature.get('LastUpdatedOn')+'<br/>'+'Address : '+ sid.display_name+'</p>'; overlay.setPosition(coordinates); } else { overlay.setPosition(undefined); closer.blur(); } }); map.addOverlay(marker); var fill = new ol.style.Fill({ color: 'rgba(255,255,255,1)' }), stroke = new ol.style.Stroke({ color: 'rgba(0,0,0,1)' }), style1 = [ new ol.style.Style({ image: new ol.style.Circle({ radius: 6, fill: fill, stroke: stroke }), zIndex: 4 }) ]; }, 300); function GetResults(lat, long) { var jsonObjectInstance = $.parseJSON($.ajax({ url: 'https://locationiq.org/v1/reverse.php?format=json&key=9c73f8c9ed5d47&lat=' + lat + '&lon=' + long, async: false, dataType: 'json' }).responseText); return jsonObjectInstance } </script>"; } catch (Exception) { mapstr = "No details found.." + @"<script> var container = document.getElementById('popup'); var geo = document.getElementById('geo-marker'); container.style.display = 'none'; geo.style.display = 'none'; </script>"; } return(mapstr); // map.InnerHtml = mapstr; }
//public void graph() //{ // if (Request.QueryString["request"] == "ctp") // { // piechartctp(); // barchatctp(); // } // else // { // Response.Redirect("Default.aspx?request=ctp"); // } // //timer.Enabled = false; //} public string piechart() { int flag = 0; string sql = ""; if (Request.QueryString["request"] == "ctp") { Button4.ForeColor = System.Drawing.Color.Black; Button4.BackColor = System.Drawing.Color.White; string[] q = bucket.verifyReader("select distinct COUNT(atmid) as 'a' from ATMs where status <> 'inactive' and atmid not like '%*BR*%' and atmid not like '%HDFC%' and bankid like 'ICICI'", "a"); lbl_siteassigned.Text = "5";// q[0]; sql = @" select count(atmid) as Audited from atms where atmid in (select atmid from current_dr_ctp) and status<>'Inactive' and atmid not like '%*BR*%' and atmid not like '%HDFC%' and bankid like 'ICICI' union all select count(atmid) from atms where atmid not in (select atmid from current_dr_ctp) and status<>'Inactive' and atmid not like '%*BR*%' and atmid not like '%HDFC%' and bankid like 'ICICI' "; flag = 1; } else if (Request.QueryString["request"] == "hdfc") { Button1.ForeColor = System.Drawing.Color.Black; Button1.BackColor = System.Drawing.Color.White; //Chart4.Visible = false; Label1.Visible = false; string[] q = bucket.verifyReader("select distinct COUNT(atmid) as 'a' from ATMs where status <> 'inactive' and atmid like '%HDFC%'", "a"); lbl_siteassigned.Text = q[0]; sql = @" select count(atmid) as Audited from atms where atmid in (select distinct atmid from current_dr_ctp where atmid like '%HDFC%') and status<>'Inactive' and bankid='HDFC' union all select count(atmid) from atms where atmid not in (select distinct atmid from current_dr_ctp where atmid like '%HDFC%') and status<>'Inactive' and bankid='HDFC' "; flag = 1; } else if (Request.QueryString["request"] == "axis") { Button2.ForeColor = System.Drawing.Color.Black; Button2.BackColor = System.Drawing.Color.White; string[] q = bucket.verifyReader("select distinct COUNT(atmid) as 'a' from ATMs where bankid='BANK OF MAHARASHTRA' and status <> 'inactive' and atmid like '%*BR*%' and atmid not like '%HDFC%' and bankid='BANK OF MAHARASHTRA'", "a"); lbl_siteassigned.Text = q[0]; // Chart4.Visible = false; Label1.Visible = false; sql = @" select count(atmid) as Audited from atms where atmid in (select atmid from DR_BRANCH) and status<>'Inactive' and atmid like '%*BR*%' and atmid not like '%HDFC%' and bankid='BANK OF MAHARASHTRA' union all select count(atmid) from atms where atmid not in (select atmid from DR_BRANCH) and status<>'Inactive' and atmid like '%*BR*%' and atmid not like '%HDFC%' and bankid='BANK OF MAHARASHTRA' "; flag = 1; } else { Response.Redirect("Dashboard.aspx?request=ctp"); } SqlCommand cmd1 = new SqlCommand(sql); DataTable dt1 = bucket.GetData(cmd1); cmd1.CommandTimeout = 200; string pie = ""; if (flag == 1 && dt1.Rows.Count > 0) { pie = @"<script src=""js/highcharts.js""></script> <script type=""text/javascript""> $(function () { $(document).ready(function () { // Build the chart $('#container').highcharts({ chart: { plotBackgroundColor: null, plotBorderWidth: null, plotShadow: false }, title: { text: '' }, tooltip: { pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>' }, plotOptions: { pie: { allowPointSelect: true, cursor: 'pointer', dataLabels: { enabled: false }, showInLegend: true } }, series: [{ type: 'pie', name: 'Audits', data: [ ['Audited', " + Convert.ToInt32(dt1.Rows[0][0]) + @"], ['Pending'," + Convert.ToInt32(dt1.Rows[1][0]) + @"] ] }] }); }); }); </script>" ; } return(pie); }
public void drawmap() { DataTable dt = new DataTable(); SqlCommand cmd = new SqlCommand(sql); dt = bucket.GetData(cmd); string x = ""; string markers = ""; string zoomstr = ""; var lonLat = ""; if (dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { //if (dt.Rows[i][4].ToString() == "Offline") //{ // markers += "var r = GetResults(" + dt.Rows[i][2].ToString() + ", " + dt.Rows[i][1].ToString() + ");" + "\n" + // "var feature = new OpenLayers.Feature.Vector(" + "\n" + // "new OpenLayers.Geometry.Point(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo)," + // "{ description: 'UserID : " + dt.Rows[i][0].ToString() + " <br/> Location : '+ r.features[0].properties.label +'<br/>Battery : " + dt.Rows[i][3].ToString() + "%<br/>Date : " + dt.Rows[i][5].ToString() + " " + dt.Rows[i][6].ToString() + "'}," + // //"{ description: 'Location : ' + '" + bucket.filterText(dt.Rows[i][5].ToString().TrimStart(',')) + "' }," + // "{ externalGraphic: 'Image/man-red.png', graphicHeight: 35, graphicWidth: 35, graphicXOffset: -12, graphicYOffset: -25 });" + "\n" + // "vectorLayer.addFeatures(feature);" + "\n"; //} //else if (dt.Rows[i][4].ToString() == "Batterylow") //{ // markers += "var r = GetResults(" + dt.Rows[i][2].ToString() + ", " + dt.Rows[i][1].ToString() + ");" + "\n" + // "var feature = new OpenLayers.Feature.Vector(" + "\n" + // "new OpenLayers.Geometry.Point(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo)," + // "{ description: 'UserID : " + dt.Rows[i][0].ToString() + " <br/> Location : '+ r.features[0].properties.label +'<br/>Battery : " + dt.Rows[i][3].ToString() + "%<br/>Date : " + dt.Rows[i][5].ToString() + " " + dt.Rows[i][6].ToString() + "'}," + // //"{ description: 'Location : ' + '" + bucket.filterText(dt.Rows[i][5].ToString().TrimStart(',')) + "' }," + // "{ externalGraphic: 'Image/man-orange.png', graphicHeight: 35, graphicWidth: 35, graphicXOffset: -12, graphicYOffset: -25 });" + "\n" + // "vectorLayer.addFeatures(feature);" + "\n"; //} //else //{ // markers += "var r = GetResults(" + dt.Rows[i][2].ToString() + ", " + dt.Rows[i][1].ToString() + ");" + "\n" + // "var feature = new OpenLayers.Feature.Vector(" + "\n" + // "new OpenLayers.Geometry.Point(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo)," + // "{ description: 'UserID : " + dt.Rows[i][0].ToString() + " <br/> Location : '+ r.features[0].properties.label +'<br/>Battery : " + dt.Rows[i][3].ToString() + "%<br/>Date : " + dt.Rows[i][5].ToString() + " " + dt.Rows[i][6].ToString() + "'}," + // //"{ description: 'Location : ' + '" + bucket.filterText(dt.Rows[i][5].ToString().TrimStart(',')) + "' }," + // "{ externalGraphic: 'Image/man-green.png', graphicHeight: 35, graphicWidth: 35, graphicXOffset: -12, graphicYOffset: -25 });" + "\n" + // "vectorLayer.addFeatures(feature);" + "\n"; //} if (dt.Rows[i][4].ToString() == "Offline") { markers += "var r = '';" + "\n" + "try {" + "var feature = new OpenLayers.Feature.Vector(" + "\n" + "new OpenLayers.Geometry.Point(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo)," + "{ description: 'UserID : " + dt.Rows[i][0].ToString() + " <br/> Location : NA<br/>Battery : " + dt.Rows[i][3].ToString() + "%<br/>Date : " + dt.Rows[i][5].ToString() + " " + dt.Rows[i][6].ToString() + "'}," + //"{ description: 'Location : ' + '" + bucket.filterText(dt.Rows[i][5].ToString().TrimStart(',')) + "' }," + "{ externalGraphic: 'Image/man-red.png', graphicHeight: 35, graphicWidth: 35, graphicXOffset: -12, graphicYOffset: -25 });" + "\n" + "vectorLayer.addFeatures(feature);" + "\n" + "} catch(ee){" + "var feature = new OpenLayers.Feature.Vector(" + "\n" + "new OpenLayers.Geometry.Point(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo)," + "{ description: 'UserID : " + dt.Rows[i][0].ToString() + " <br/> Location : NA <br/>Battery : " + dt.Rows[i][3].ToString() + "%<br/>Date : " + dt.Rows[i][5].ToString() + " " + dt.Rows[i][6].ToString() + "'}," + //"{ description: 'Location : ' + '" + bucket.filterText(dt.Rows[i][5].ToString().TrimStart(',')) + "' }," + "{ externalGraphic: 'Image/man-red.png', graphicHeight: 35, graphicWidth: 35, graphicXOffset: -12, graphicYOffset: -25 });" + "\n" + "vectorLayer.addFeatures(feature);}" + "\n"; } else if (dt.Rows[i][4].ToString() == "Batterylow") { markers += "var r = '';" + "\n" + "try {" + "var feature = new OpenLayers.Feature.Vector(" + "\n" + "new OpenLayers.Geometry.Point(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo)," + "{ description: 'UserID : " + dt.Rows[i][0].ToString() + " <br/> Location : NA<br/>Battery : " + dt.Rows[i][3].ToString() + "%<br/>Date : " + dt.Rows[i][5].ToString() + " " + dt.Rows[i][6].ToString() + "'}," + //"{ description: 'Location : ' + '" + bucket.filterText(dt.Rows[i][5].ToString().TrimStart(',')) + "' }," + "{ externalGraphic: 'Image/man-orange.png', graphicHeight: 35, graphicWidth: 35, graphicXOffset: -12, graphicYOffset: -25 });" + "\n" + "vectorLayer.addFeatures(feature);" + "\n" + "} catch(ee){" + "var feature = new OpenLayers.Feature.Vector(" + "\n" + "new OpenLayers.Geometry.Point(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo)," + "{ description: 'UserID : " + dt.Rows[i][0].ToString() + " <br/> Location : NA <br/>Battery : " + dt.Rows[i][3].ToString() + "%<br/>Date : " + dt.Rows[i][5].ToString() + " " + dt.Rows[i][6].ToString() + "'}," + //"{ description: 'Location : ' + '" + bucket.filterText(dt.Rows[i][5].ToString().TrimStart(',')) + "' }," + "{ externalGraphic: 'Image/man-orange.png', graphicHeight: 35, graphicWidth: 35, graphicXOffset: -12, graphicYOffset: -25 });" + "\n" + "vectorLayer.addFeatures(feature);}" + "\n"; } else { //"var r = GetResults(" + dt.Rows[i][2].ToString() + ", " + dt.Rows[i][1].ToString() + ");" + "\n" + markers += "var r = '';" + "\n" + "try {" + "var feature = new OpenLayers.Feature.Vector(" + "\n" + "new OpenLayers.Geometry.Point(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo)," + "{ description: 'UserID : " + dt.Rows[i][0].ToString() + " <br/> Location : NA<br/>Battery : " + dt.Rows[i][3].ToString() + "%<br/>Date : " + dt.Rows[i][5].ToString() + " " + dt.Rows[i][6].ToString() + "'}," + //"{ description: 'Location : ' + '" + bucket.filterText(dt.Rows[i][5].ToString().TrimStart(',')) + "' }," + "{ externalGraphic: 'Image/man-green.png', graphicHeight: 35, graphicWidth: 35, graphicXOffset: -12, graphicYOffset: -25 });" + "\n" + "vectorLayer.addFeatures(feature);" + "\n" + "} catch(ee){" + "var feature = new OpenLayers.Feature.Vector(" + "\n" + "new OpenLayers.Geometry.Point(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo)," + "{ description: 'UserID : " + dt.Rows[i][0].ToString() + " <br/> Location : NA <br/>Battery : " + dt.Rows[i][3].ToString() + "%<br/>Date : " + dt.Rows[i][5].ToString() + " " + dt.Rows[i][6].ToString() + "'}," + //"{ description: 'Location : ' + '" + bucket.filterText(dt.Rows[i][5].ToString().TrimStart(',')) + "' }," + "{ externalGraphic: 'Image/man-green.png', graphicHeight: 35, graphicWidth: 35, graphicXOffset: -12, graphicYOffset: -25 });" + "\n" + "vectorLayer.addFeatures(feature);}" + "\n"; } if (ddofficer.SelectedValue == "ALL") { zoomstr = "var lonLat = new OpenLayers.LonLat(77.2658031,23.1996633).transform(epsg4326, projectTo);" + "\n" + "var zoom = 4;" + "\n"; } else { zoomstr = "var lonLat = new OpenLayers.LonLat(" + dt.Rows[i][1].ToString() + ", " + dt.Rows[i][2].ToString() + ").transform(epsg4326, projectTo);" + "\n" + "var zoom = 17;" + "\n"; } } Label1.Visible = false; } else { Label1.Visible = true; } x = @" <script src=" + Convert.ToChar(34) + "https://openlayers.org/api/OpenLayers.js" + Convert.ToChar(34) + "></script> <script src=" + Convert.ToChar(34) + "https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js" + Convert.ToChar(34) + "></script>" + "<script>" + "\n" + "function GetResults(lat, long) {" + "\n" + "var jsonObjectInstance = $.parseJSON($.ajax({" + "\n" +//Transovative && Transo@123 mapzen // [email protected] && Trans123 " url: 'https://search.mapzen.com/v1/reverse?api_key=mapzen-p6NsJtH&point.lat='+lat+'&point.lon='+long+'&size=1'," + "\n" + " async: false," + "\n" + "dataType: 'json'" + "\n" + "}).responseText); return jsonObjectInstance" + "\n" + "}" + "\n" + "map = new OpenLayers.Map(" + Convert.ToChar(34) + "basicMap" + Convert.ToChar(34) + ");" + "\n" + "map.addLayer(new OpenLayers.Layer.OSM());" + "\n" + "epsg4326 = new OpenLayers.Projection(" + Convert.ToChar(34) + "EPSG:4326" + Convert.ToChar(34) + ");" + "\n" + //WGS 1984 projection "projectTo = map.getProjectionObject(); " + "\n" + //The map projection (Spherical Mercator) //"var lonLat = new OpenLayers.LonLat(77.2658031,23.1996633).transform(epsg4326, projectTo);" + "\n" + //"var zoom = 4;" + "\n" + zoomstr + "map.setCenter(lonLat, zoom);" + "\n" + "var vectorLayer = new OpenLayers.Layer.Vector(" + Convert.ToChar(34) + "Overlay" + Convert.ToChar(34) + ");" + "\n" + markers + "map.addLayer(vectorLayer);" + "\n" + //Add a selector control to the vectorLayer with popup functions "var controls = {" + "\n" + "selector: new OpenLayers.Control.SelectFeature(vectorLayer, { onSelect: createPopup, onUnselect: destroyPopup })" + "\n" + "};" + "\n" + "function createPopup(feature) {" + "\n" + "feature.popup = new OpenLayers.Popup.FramedCloud(" + Convert.ToChar(34) + "pop" + Convert.ToChar(34) + "," + "\n" + "feature.geometry.getBounds().getCenterLonLat()," + "\n" + "null," + "\n" + "'<div class=" + Convert.ToChar(34) + "markerContent" + Convert.ToChar(34) + ">' + feature.attributes.description + '</div>'," + "\n" + "null," + "\n" + "true," + "\n" + "function () { controls['selector'].unselectAll(); }" + "\n" + ");" + "\n" + //feature.popup.closeOnMove = true; "map.addPopup(feature.popup);" + "\n" + "}" + "\n" + "function destroyPopup(feature) {" + "\n" + "feature.popup.destroy();" + "\n" + "feature.popup = null;" + "\n" + "}" + "\n" + "map.addControl(controls['selector']);" + "\n" + "controls['selector'].activate();" + "\n" + "</script>"; Session["sess_x"] = x; }