@@ -338,11 +338,16 @@ func StravaSyncWeekForUser(user models.User, configFile models.ConfigStruct, sea
338
338
}
339
339
340
340
if newExercise {
341
- err = StravaCreateOperationForActivity (activity , user , finalExercise )
341
+ log .Println ("Creating new operation for exercise based on activity." )
342
+ operation , err := StravaCreateOperationForActivity (activity , user , finalExercise )
342
343
if err != nil {
343
344
log .Println ("Failed to create operation. Error: " + err .Error ())
344
345
log .Println ("Sport type was: " + activity .SportType )
346
+ } else if operation == nil {
347
+ log .Println ("Failed to create operation. No error." )
348
+ log .Println ("Sport type was: " + activity .SportType )
345
349
}
350
+
346
351
}
347
352
348
353
log .Println ("Updated exercise." )
@@ -351,8 +356,9 @@ func StravaSyncWeekForUser(user models.User, configFile models.ConfigStruct, sea
351
356
return
352
357
}
353
358
354
- func StravaCreateOperationForActivity (activity models.StravaGetActivitiesRequestReply , user models.User , exercise models.Exercise ) (err error ) {
359
+ func StravaCreateOperationForActivity (activity models.StravaGetActivitiesRequestReply , user models.User , exercise models.Exercise ) (finalOperation * models. Operation , err error ) {
355
360
err = nil
361
+ finalOperation = nil
356
362
357
363
operations , err := database .GetOperationsByExerciseID (exercise .ID )
358
364
if len (operations ) > 0 {
@@ -365,9 +371,9 @@ func StravaCreateOperationForActivity(activity models.StravaGetActivitiesRequest
365
371
366
372
action , err := database .GetActionByStravaName (activity .SportType )
367
373
if err != nil {
368
- return err
374
+ return finalOperation , err
369
375
} else if action == nil {
370
- return nil
376
+ return finalOperation , nil
371
377
}
372
378
373
379
operation := models.Operation {}
@@ -378,9 +384,11 @@ func StravaCreateOperationForActivity(activity models.StravaGetActivitiesRequest
378
384
379
385
operation , err = database .CreateOperationInDB (operation )
380
386
if err != nil {
381
- return err
387
+ return finalOperation , err
382
388
}
383
389
390
+ finalOperation = & operation
391
+
384
392
operationSet := models.OperationSet {}
385
393
operationSet .OperationID = operation .ID
386
394
operationSet .Distance = & activity .Distance
@@ -389,7 +397,7 @@ func StravaCreateOperationForActivity(activity models.StravaGetActivitiesRequest
389
397
390
398
_ , err = database .CreateOperationSetInDB (operationSet )
391
399
if err != nil {
392
- return err
400
+ return finalOperation , err
393
401
}
394
402
395
403
return
0 commit comments