adding a setting, auto import only for pro and higher
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
from .integrations import SyncIntegration, NoTokenError, create_or_update_syncrecord, get_known_ids
|
||||
from rowers.models import Rower, User, Workout, TombStone, PlannedSession
|
||||
from rowingdata import rowingdata
|
||||
from rowers.rower_rules import user_is_not_basic, user_is_coachee
|
||||
|
||||
from rowers import mytypes
|
||||
|
||||
@@ -545,20 +546,27 @@ class IntervalsIntegration(SyncIntegration):
|
||||
return 1
|
||||
|
||||
def import_activities(self, event, *args, **kwargs):
|
||||
try:
|
||||
record = event["activity"]
|
||||
except KeyError:
|
||||
records = []
|
||||
if not self.rower.intervals_auto_import:
|
||||
return 0
|
||||
if user_is_not_basic(self.rower.user) or user_is_coachee(self.rower.user):
|
||||
try:
|
||||
record = event["activity"]
|
||||
except KeyError:
|
||||
records = []
|
||||
|
||||
try:
|
||||
id = record['id']
|
||||
result = self.get_workout(id)
|
||||
except KeyError:
|
||||
pass
|
||||
try:
|
||||
id = record['id']
|
||||
result = self.get_workout(id)
|
||||
except KeyError:
|
||||
pass
|
||||
|
||||
return 1
|
||||
return 1
|
||||
|
||||
return 0
|
||||
|
||||
def delete_activities(self, event, *args, **kwargs):
|
||||
if not self.rower.intervals_auto_delete:
|
||||
return 0
|
||||
try:
|
||||
record = event["activity"]
|
||||
except KeyError:
|
||||
|
||||
@@ -1176,6 +1176,7 @@ class Rower(models.Model):
|
||||
intervals_auto_export = models.BooleanField(default=False)
|
||||
intervals_auto_import = models.BooleanField(default=False)
|
||||
intervals_delete_plannedsession = models.BooleanField(default=False, verbose_name="Deleting planned session deletes it on intervals.icu")
|
||||
intervals_auto_delete = models.BooleanField(default=True, verbose_name="Deleting an activity on intervals.icu deletes it on both")
|
||||
intervals_resample_to_1s = models.BooleanField(default=False, verbose_name='Resample to 1s on export')
|
||||
sporttrackstoken = models.CharField(
|
||||
default='', max_length=200, blank=True, null=True)
|
||||
@@ -4676,6 +4677,7 @@ class RowerExportForm(ModelForm):
|
||||
'intervals_auto_export',
|
||||
'intervals_delete_plannedsession',
|
||||
'intervals_resample_to_1s',
|
||||
'intervals_auto_delete',
|
||||
'imports_are_private'
|
||||
]
|
||||
|
||||
@@ -4703,6 +4705,7 @@ class RowerExportFormIntervals(ModelForm):
|
||||
'intervals_auto_import',
|
||||
'intervals_auto_export',
|
||||
'intervals_resample_to_1s',
|
||||
'intervals_auto_delete',
|
||||
'intervals_delete_plannedsession',
|
||||
]
|
||||
|
||||
|
||||
BIN
rowers/tests/testdata/testdata.tcx.gz
vendored
BIN
rowers/tests/testdata/testdata.tcx.gz
vendored
Binary file not shown.
Reference in New Issue
Block a user