import { Component, OnInit, OnDestroy,Output,EventEmitter } from '@angular/core'; import { Params,Router, ActivatedRoute, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router'; import {DatainjectionService} from '../datainjection.service' import * as CryptoJS from 'crypto-js'; import {ContactService} from '../contact.service'; import * as io from 'socket.io-client'; import * as jquery from 'jquery'; import {Observable} from 'rxjs/Rx'; declare var _:any,$:any; @Component({ selector: 'app-sidebar', templateUrl: './sidebar.component.html', styleUrls: ['./sidebar.component.scss'], providers:[ContactService] }) export class SidebarComponent implements OnInit, OnDestroy{ timer:any = Observable.timer(100, 100); add_dev:boolean; subscription:any groupData:any={}; groupId: any; DealerID: any; superAdmin: any; supAdm: any; refresh() { this.subscription = this.timer.subscribe(t => { this.Ing_Status(); }); } //this.subscription = this.timer.subscribe(t => { skip:any; limit:any; search:any; sidebarData(){ if(this.checker == "OK" || this.checker == "ok"){ this.injectData.getData(this.emailid,this.useridd,this.groupId,this.skip,this.limit,this.search,this.supAdm,this.DealerID).subscribe( (data) => { // this.Load=false; this.devicess = data this.final = this.devicess.devices this.total_final = this.final console.log(this.final,"-------------------------------->") if(this.final.length == 0 ||this.final == null || !this.final){ this.add_dev = false console.log("Load1"); // this.Load=false; } else{ this.add_dev = true } this.Ing_Status(); // this.refresh(); let val = JSON.stringify(this.final); localStorage.setItem("devices",val); window.localStorage['LoadGraph'] = 'True' window.localStorage['checker'] = 'Data' window.localStorage['DataLoaded'] = 'True' // window.localStorage['GetDevData'] = 'False' // this.table(); // this.subscription.unsubscribe(); }, (err)=>{ if(err){ console.log("Load3"); // this.Load = false; } } ) } else if( window.localStorage.DataUpdate == 'True'){ this.final = [] this.injectData.getData(this.emailid,this.useridd,this.groupId,this.skip,this.limit,this.search,this.supAdm,this.DealerID).subscribe( (data) => { this.devicess = data this.final = this.devicess.devices console.log("7444444444444",this.final); this.total_final = this.final if(this.final.length == 0 ||this.final == null || !this.final){ this.add_dev = false console.log("Load3"); // this.Load=false; } else{ this.add_dev = true } this.Ing_Status(); // this.refresh(); let val = JSON.stringify(this.final); localStorage.setItem("devices",val); window.localStorage['DataUpdate'] = 'False' window.localStorage['LoadGraph'] = 'True' window.localStorage['DataLoaded'] = 'True' // window.localStorage['GetDevData'] = 'False' // this.subscription.unsubscribe(); console.log("Load4"); // this.Load=false; // this.table(); // this.subscription.unsubscribe(); }, (err)=>{ if(err){ console.log("Load5"); // this.Load = false } } ) } else if(this.checker == "Data"){ var retrievedData = localStorage.getItem("devices"); var cord = JSON.parse(retrievedData); this.final = cord this.total_final = this.final if(this.final.length == 0 ||this.final == null || !this.final){ this.add_dev = false; console.log("Load6"); // this.Load=false; } this.total_final = this.final window.localStorage['DataLoaded'] = 'True' this.Ing_Status(); // this.refresh(); // this.subscription.unsubscribe(); // window.localStorage['GetDevData'] = 'False' console.log("Load7Side"); // this.Load=false; // this.table(); // this.subscription.unsubscribe(); } else{ this.injectData.getData(this.emailid,this.useridd,this.groupId,this.skip,this.limit,this.search,this.supAdm,this.DealerID).subscribe( (data)=> { this.devicess = data this.final = this.devicess.devices this.total_final = this.final; if(this.final.length == 0 ||this.final == null || !this.final){ this.add_dev = false console.log("Load8"); // this.Load=false; } else{ this.add_dev = true } this.Ing_Status(); //this.refresh(); let val = JSON.stringify(this.final); localStorage.setItem("devices",val); window.localStorage['LoadGraph'] = 'True' window.localStorage['checker'] = 'Data' window.localStorage['DataLoaded'] = 'True' // window.localStorage['GetDevData'] = 'False' console.log("Load9"); // this.Load=false; // this.subscription.unsubscribe(); // this.table(); // this.subscription.unsubscribe(); }, (err)=>{ if(err){ console.log("Load10"); // this.Load = false; } } ) } // console.log(this.final) // } // }) } specific:any mb:any constructor( private contactService: ContactService,private router: Router,private injectData:DatainjectionService) { // this.table(); window.localStorage['GetDevData'] = 'True' this.fs = JSON.parse(window.atob(window.localStorage.token.split(".")[1])).fn; this.ls = JSON.parse(window.atob(window.localStorage.token.split(".")[1])).ln; this.emailid = JSON.parse(window.atob(window.localStorage.token.split(".")[1])).email; this.or = JSON.parse(window.atob(window.localStorage.token.split(".")[1]))._orgName; this.useridd = JSON.parse(window.atob(window.localStorage.token.split('.')[1]))._id; this.mb = JSON.parse(window.atob(window.localStorage.token.split('.')[1])).phn; this.custtype = JSON.parse(window.atob(window.localStorage.token.split('.')[1])).isDealer; if(this.custtype == true){ this.cust = true; } if(this.mb.charAt(0)=="n"){ this.mb = ' ' } this.socket_Ing = this.injectData.getSocket_gps(); //io.connect('https://www.oneqlik.in/gps', { secure: true, rejectUnauthorized: false, transports: ["polling"], upgrade: false }); this.socket_Ing.on('connect', function(this){ }); // this.Load = true; // var secretKey = 'adnateIOTtrackeR'; this.checker = window.localStorage.checker // console.log(this.checker) this.sidebarData(); } try:any devicess:any; final:any = null; userID:any; fs:any; ls:any; or:any; emailid:any; useridd:any; custtype:any; cust:boolean = false; // Load:boolean = false; openNav() { /* document.getElementById("myNav").style.width = "100%";*/ window.localStorage['Device_detail'] = this.devicess; window.localStorage['mapLoad_ID'] = "True" this.router.navigateByUrl("location"); // this.router.navigateByUrl("fuelComp"); } showButton=true; vewdev(id,name,type){ this.contactService.menuReturnSet('openNav'); var dataStatus = { vehicleId:id, vehicleName:name, vehicleType:type } if(type=="Tracker"){ window.localStorage['mapLoad_ID'] = id; window.localStorage['mapLoad_Name'] = name window.localStorage['devDetail']= JSON.stringify(dataStatus); this.router.navigateByUrl("location"); /* window.location.reload(); */ } else{ // debugger; this.router.navigateByUrl("account?_did="+id+"."+name); } } img_URL :any ing_Arr = [] imgurl:any; text:any; myInput:any; total_final:any; test(a,b){ //let b = a.split("|")[0] if(!a){ this.imgurl="../../assets/image/ignition-idle.png"; return true; } else if(a=="1"){ this.imgurl="on"; this.text = "Ignition Status: ON | Last Updated: "+b return true; } else if(a=="0"){ this.imgurl="off" this.text = "Ignition Status: OFF | Last Updated:"+b return true; } else{ return false; } } statListener(index,dev) { var outerThis = this; var avgspd = "Average_Speed"; var dst ="Distance"; return function(stat,did){ dev[avgspd] = stat.avgSpeed ? stat.avgSpeed.toFixed(2) : 0.00; dev[dst] = stat.distance; var passtodayOdo = dev[dst]; var i = outerThis.final.indexOf(index); outerThis.final[i] = dev; outerThis.total_final = outerThis.final; window.localStorage['LoadGraph'] = 'True' let val = JSON.stringify(outerThis.final); localStorage.setItem("devices",val); window.localStorage['LoadGraph'] = 'True' } } accListener(index,dev){ var outerThis = this; var ing return function(acc,from,time,d4,d5){ // dev = d4; var newNum = "Ignition"; var newTitle ="Ignition_Time" // var batteryStatus = "batteryStatus"; // var gsmSignal = "gsmSignal"; // var ignitionLock = "ignitionLock"; // var gpsTracking = "gpsTracking"; // var alarm = "alarm"; // var power = "power"; // var activated = "activated"; // var satellites = "satellites"; var newVal = acc; //var newTim = time; var dt = new Date(time); let day = dt.getDate(); let month = dt.getMonth()+1; let year = dt.getFullYear(); let final_date = day+"/"+month+"/"+year let tm = new Date(time).toLocaleTimeString(); let total = final_date + " " + tm outerThis.ing_Arr.push(from) dev[newNum] = newVal; dev[newTitle] = total; var i = outerThis.final.indexOf(index); outerThis.final[i] = dev; outerThis.total_final = outerThis.final; // window.localStorage['DataUpdate'] = 'True' window.localStorage['LoadGraph'] = 'True' //outerThis.sidebarData(); // console.log(outerThis.total_final) let val = JSON.stringify(outerThis.final); localStorage.setItem("devices",val); window.localStorage['LoadGraph'] = 'True' } } ind :any gh = [] table(){ makeTableScroll(); function makeTableScroll() { var $table = $('table.scroll'), $bodyCells = $table.find('tbody tr:first').children(), colWidth; // Adjust the width of thead cells when window resizes $(window).resize(function() { // Get the tbody columns width array colWidth = $bodyCells.map(function() { return $(this).width(); }).get(); // Set the width of thead columns $table.find('thead tr').children().each(function(i, v) { $(v).width(colWidth[i]); }); }).resize(); } } Ing_Status(){ this.ing_Arr = [] for(var y=0; y -1) { tr[i].style.display = ""; } else { tr[i].style.display = "none"; } } } } } checker:any; dev:any; private socket_Ing private socket_stat da :any getrequest(para){ this.da = para this.specific = true // this.sidebarData() // console.log(this.total_final) } ngOnInit() { this.superAdmin = JSON.parse(window.atob(window.localStorage.token.split(".")[1])).isSuperAdmin; this.custtype = JSON.parse(window.atob(window.localStorage.token.split('.')[1])).isDealer; if(this.custtype){ this.DealerID = this.useridd } if(this.superAdmin){ this.supAdm = this.useridd; } let socket_Ing = this.injectData.getSocket_gps(); io.connect('https://www.oneqlik.in/gps', { secure: true, rejectUnauthorized: false, transports: ["websocket", "polling"], upgrade: false }); socket_Ing.on('connect', function(this){ }); // this.injectData.getGroupData(this.emailid,this.useridd).subscribe(resp=>{ // this.groupData = resp.map(function(d){ // d.vehicleDetails.map(function(d1){ // debugger; // socket_Ing.emit('acc',d1.Device_ID ) // socket_Ing.on(d1.Device_ID+'acc',()=>{ // return function(ind,data){ // console.log("451",data); // d1= data; // } // }) // socket_Ing.emit('stat',d1.Device_ID,d1.Device_Name,new Date().setHours(0,0,0,0),null) // socket_Ing.on(d1.Device_ID+'stat',()=>{ // return function(ind,data){ // debugger; // console.log("459",data); // d1=data; // } // }) // return d1; // }) // return d; // }) // }); } ngOnDestroy() { for (var e = 0; e < this.ing_Arr.length; e++){ // console.log(this.ing_Arr[e]) this.socket_Ing.removeAllListeners(this.ing_Arr[e]) } this.socket_Ing.removeAllListeners() } showd(d){ d.flag =!d.flag; } show(d){ if(d.flag == undefined) d.flag = true; else d.flag = !d.flag; } // filter //sorting key: string = 'Device_Name'; //set default reverse: boolean = false; sort(key){ // console.log(key); this.key = key; this.reverse = !this.reverse; } searchFilter(){ this.myInput; // console.log(this.myInput); // this.sidebarData() } }