@@ -23,7 +23,7 @@ exports.join = function(req, res, next){
2323 }
2424
2525 var member = Member . prepare ( fleet . key , req . session . fleet ) ;
26- var event = Event . prepare ( 'memberJoined' , fleet . key , member ) ;
26+ var event = Event . prepare ( 'memberJoined' , fleet . key , member . toObject ( ) ) ;
2727
2828 member . saveQ ( )
2929 . then ( function ( member ) {
@@ -58,7 +58,7 @@ exports.leave = function(req, res, next){
5858
5959 Member . findOneQ ( { key : key } )
6060 . then ( function ( member ) {
61- var event = Event . prepare ( 'memberLeft' , member . fleetKey , member )
61+ var event = Event . prepare ( 'memberLeft' , member . fleetKey , member . toObject ( ) )
6262 event . saveQ ( ) ;
6363 member . removeQ ( ) ;
6464
@@ -75,31 +75,31 @@ exports.leave = function(req, res, next){
7575exports . status = function ( req , res , next ) {
7676 if ( ! req . session . fleetKey || ! req . session . memberKey ) {
7777 var self = Member . prepare ( 'none' , header_parser ( req ) )
78- var event = Event . prepare ( 'statusSelf' , 'none' , self )
78+ var event = Event . prepare ( 'statusSelf' , 'none' , self . toObject ( ) )
7979
8080 return response . success ( res , [ event ] ) ;
8181 }
8282
8383 Member . findOneQ ( { key : req . session . memberKey } )
8484 . then ( function ( member ) {
8585 var events = [ ] ;
86- events . push ( Event . prepare ( 'statusSelf' , member . fleetKey , member ) ) ;
86+ events . push ( Event . prepare ( 'statusSelf' , member . fleetKey , member . toObject ( ) ) ) ;
8787
8888 var tasks = [
8989 Fleet . findOne ( { key : member . fleetKey } ) . execQ ( ) . then ( function ( fleet ) {
90- return Event . prepare ( 'statusFleet' , member . fleetKey , fleet ) ;
90+ return Event . prepare ( 'statusFleet' , member . fleetKey , fleet . toObject ( ) ) ;
9191 } ) ,
9292 Event . find ( { fleetKey : member . fleetKey } ) . execQ ( ) . then ( function ( events ) {
93- return Event . prepare ( 'statusEvents' , member . fleetKey , events ) ;
93+ return Event . prepare ( 'statusEvents' , member . fleetKey , _ . map ( events , function ( event ) { return event . toObject ( ) ; } ) ) ;
9494 } ) ,
9595 Member . find ( { fleetKey : member . fleetKey } ) . execQ ( ) . then ( function ( members ) {
96- return Event . prepare ( 'statusMembers' , member . fleetKey , members ) ;
96+ return Event . prepare ( 'statusMembers' , member . fleetKey , _ . map ( members , function ( member ) { return member . toObject ( ) ; } ) ) ;
9797 } ) ,
9898 Hostile . find ( { fleetKey : member . fleetKey } ) . execQ ( ) . then ( function ( hostiles ) {
99- return Event . prepare ( 'statusHostiles' , member . fleetKey , hostiles ) ;
99+ return Event . prepare ( 'statusHostiles' , member . fleetKey , _ . map ( hostiles , function ( hostile ) { return hostile . toObject ( ) ; } ) ) ;
100100 } ) ,
101101 Scan . find ( { fleetKey : member . fleetKey } ) . execQ ( ) . then ( function ( scans ) {
102- return Event . prepare ( 'statusScans' , member . fleetKey , scans ) ;
102+ return Event . prepare ( 'statusScans' , member . fleetKey , _ . map ( scans , function ( scan ) { return scan . toObject ( ) ; } ) ) ;
103103 } )
104104 ] ;
105105
@@ -133,7 +133,6 @@ exports.poll = function(req, res, next) {
133133 var self = req . session . fleet ;
134134 var previous = _ . clone ( member . toObject ( ) )
135135
136- member . ts = moment ( ) . unix ( ) ;
137136 member . shipType = self . shipType ;
138137 member . shipTypeId = self . shipTypeId ;
139138 member . systemName = self . systemName ;
@@ -150,10 +149,10 @@ exports.poll = function(req, res, next) {
150149 req . session . linked . isLinked = true ;
151150 member . isLinked = true ;
152151 } else {
153- var event = Event . prepare ( 'memberUpdated' , req . session . fleetKey , member ) ;
152+ var event = Event . prepare ( 'memberUpdated' , req . session . fleetKey , member . toObject ( ) ) ;
154153 events . push ( event ) ;
155154 event . saveQ ( ) ;
156- member . saveQ ( ) ;
155+
157156 }
158157
159158 if ( ! previous . isDocked && ! member . isDocked ) {
@@ -184,6 +183,11 @@ exports.poll = function(req, res, next) {
184183 }
185184 }
186185
186+ if ( ! req . session . linked ) {
187+ member . ts = moment ( ) . unix ( ) ;
188+ member . saveQ ( ) ;
189+ }
190+
187191 return events ;
188192 } ) ,
189193 Event . find ( { fleetKey : req . session . fleetKey , ts : { $lte : moment ( ) . unix ( ) , $gte : + req . params . lastPollTs } } )
@@ -231,7 +235,7 @@ exports.create = function(req, res, next) {
231235 } )
232236 . then ( function ( result ) {
233237 member . link_to_session ( req . session ) ;
234- response . success ( res , Event . prepare ( 'fleetCreated' , 'none' , fleet ) ) ;
238+ response . success ( res , Event . prepare ( 'fleetCreated' , 'none' , fleet . toObject ( ) ) ) ;
235239 } )
236240 . catch ( function ( error ) {
237241 console . log ( error )
@@ -248,7 +252,7 @@ exports.report = function(req, res, next) {
248252 if ( report . text === 'clear' ) {
249253 Hostile . removeQ ( { systemId : report . systemId } )
250254 . then ( function ( hostile ) {
251- var event = Event . prepare ( 'reportClear' , report . fleetKey , report ) ;
255+ var event = Event . prepare ( 'reportClear' , report . fleetKey , report . toObject ( ) ) ;
252256 event . saveQ ( ) ;
253257
254258 return response . success ( res , event ) ;
@@ -315,7 +319,7 @@ exports.add_scan = function(req, res, next) {
315319 if ( ! scan . shipTypes . length ) return response . error ( res , 'report' , 'Invalid scan data.' ) ;
316320 if ( ! scan . shipClasses . length ) return response . error ( res , 'report' , 'Invalid scan data.' ) ;
317321
318- var event = Event . prepare ( 'scanPosted' , reporter . fleetKey , scan ) ;
322+ var event = Event . prepare ( 'scanPosted' , reporter . fleetKey , scan . toObject ( ) ) ;
319323 scan . saveQ ( ) ;
320324 event . saveQ ( ) ;
321325
@@ -345,7 +349,7 @@ exports.update_hostile = function(req, res, next) {
345349 hostile . reporterId = req . session . fleet . characterId ;
346350 hostile . reporterName = req . session . fleet . characterName ;
347351
348- var event = Event . prepare ( 'updateHostile' , req . session . fleetKey , hostile ) ;
352+ var event = Event . prepare ( 'updateHostile' , req . session . fleetKey , hostile . toObject ( ) ) ;
349353
350354 hostile . saveQ ( ) ;
351355 event . saveQ ( ) ;
0 commit comments