From d309065200dd6dcce7e722f445e38c04cf5c5c48 Mon Sep 17 00:00:00 2001
From: L4168 <L4168@student.jamk.fi>
Date: Fri, 12 Jul 2019 10:20:18 +0300
Subject: [PATCH] added socket emit for tracking update

---
 src/replay/replay.module.ts      | 2 ++
 src/tracking/tracking.module.ts  | 3 ++-
 src/tracking/tracking.service.ts | 5 +++++
 3 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/src/replay/replay.module.ts b/src/replay/replay.module.ts
index c7accef..eb8ba33 100644
--- a/src/replay/replay.module.ts
+++ b/src/replay/replay.module.ts
@@ -10,6 +10,7 @@ import { FactionService } from '../faction/faction.service';
 import { TrackingService } from '../tracking/tracking.service';
 import { TrackingEntity } from 'src/tracking/tracking.entity';
 import { PersonEntity } from 'src/user/user.entity';
+import { NotificationModule } from 'src/notifications/notifications.module';
 
 @Module({
   imports: [
@@ -21,6 +22,7 @@ import { PersonEntity } from 'src/user/user.entity';
       GameGroupEntity,
       Game_PersonEntity,
     ]),
+    NotificationModule,
   ],
   controllers: [ReplayController],
   providers: [ReplayService, UserService, FactionService, TrackingService],
diff --git a/src/tracking/tracking.module.ts b/src/tracking/tracking.module.ts
index 4f6c224..7a11931 100644
--- a/src/tracking/tracking.module.ts
+++ b/src/tracking/tracking.module.ts
@@ -4,9 +4,10 @@ import { TypeOrmModule } from '@nestjs/typeorm';
 import { TrackingController } from './tracking.controller';
 import { TrackingService } from './tracking.service';
 import { TrackingEntity } from './tracking.entity';
+import { NotificationModule } from '../notifications/notifications.module';
 
 @Module({
-  imports: [TypeOrmModule.forFeature([TrackingEntity])],
+  imports: [TypeOrmModule.forFeature([TrackingEntity]), NotificationModule],
   controllers: [TrackingController],
   providers: [TrackingService],
 })
diff --git a/src/tracking/tracking.service.ts b/src/tracking/tracking.service.ts
index 9db263d..dfd370d 100644
--- a/src/tracking/tracking.service.ts
+++ b/src/tracking/tracking.service.ts
@@ -5,12 +5,14 @@ import { Repository } from 'typeorm';
 import { Game_PersonEntity } from '../game/game.entity';
 import { TrackingEntity } from './tracking.entity';
 import { GeoDTO } from './geo.dto';
+import { NotificationGateway } from '../notifications/notifications.gateway';
 
 @Injectable()
 export class TrackingService {
   constructor(
     @InjectRepository(TrackingEntity)
     private trackingrepository: Repository<TrackingEntity>,
+    private notificationGateway: NotificationGateway,
   ) {}
 
   async trackLocation(
@@ -23,6 +25,9 @@ export class TrackingService {
       gamepersonId: gameperson,
     });
     // if player has pushed tracking data, update entry
+    this.notificationGateway.server.emit(gameId, {
+      type: 'tracking-update',
+    });
     if (trackedperson) {
       trackdata['time'] = Date.now();
       //add coordinates
-- 
GitLab