Private
Public Access
1
0

User can edit name and email address

This commit is contained in:
Sander Roosendaal
2017-01-27 11:17:29 +01:00
parent ae36376dbe
commit 227081cfb3
4 changed files with 128 additions and 12 deletions

View File

@@ -8,6 +8,7 @@ from django.dispatch import receiver
from django.forms.widgets import SplitDateTimeWidget
from django.forms.formsets import BaseFormSet
from datetimewidget.widgets import DateTimeWidget
from django.core.validators import validate_email
import os
import twitter
@@ -85,6 +86,8 @@ class Rower(models.Model):
('lwt','light-weight'),
)
user = models.OneToOneField(User)
# Heart Rate Zone data
max = models.IntegerField(default=192,verbose_name="Max Heart Rate")
rest = models.IntegerField(default=48,verbose_name="Resting Heart Rate")
ut2 = models.IntegerField(default=105,verbose_name="UT2 band lower HR")
@@ -92,10 +95,13 @@ class Rower(models.Model):
at = models.IntegerField(default=160,verbose_name="AT band lower HR")
tr = models.IntegerField(default=167,verbose_name="TR band lower HR")
an = models.IntegerField(default=180,verbose_name="AN band lower HR")
# Weight Category (for sync to C2)
weightcategory = models.CharField(default="hwt",
max_length=30,
choices=weightcategories)
# Power Zone Data
ftp = models.IntegerField(default=226,verbose_name="Functional Threshold Power")
pw_ut2 = models.IntegerField(default=124,verbose_name="UT2 Power")
@@ -111,6 +117,7 @@ class Rower(models.Model):
'Pwr TR',
'Pwr AN'])
# Access tokens
c2token = models.CharField(default='',max_length=200,blank=True,null=True)
tokenexpirydate = models.DateTimeField(blank=True,null=True)
c2refreshtoken = models.CharField(default='',max_length=200,blank=True,null=True)
@@ -120,13 +127,19 @@ class Rower(models.Model):
blank=True,null=True)
stravatoken = models.CharField(default='',max_length=200,blank=True,null=True)
# Plan
plans = (
('basic','basic'),
('pro','pro'),
('coach','coach')
)
rowerplan = models.CharField(default='basic',max_length=30,
choices=plans)
planexpires = models.DateField(default=timezone.now())
# Friends/Team
friends = models.ManyToManyField("self",blank=True)
team = models.ForeignKey(Team,blank=True,null=True)
@@ -541,13 +554,28 @@ class RowerPowerZonesForm(ModelForm):
raise forms.ValidationError(e)
return cleaned_data
# Form to set rower's Email and Weight category
class AccountRowerForm(ModelForm):
class Meta:
model = Rower
fields = ['weightcategory']
class UserForm(ModelForm):
class Meta:
model = User
fields = ['first_name','last_name','email']
def clean(self):
cleaned_data = super(UserForm, self).clean()
# Form to set rower's Heart Rate zones, including test routines
# to enable consistency
class RowerForm(ModelForm):
class Meta:
model = Rower
fields = ['rest','ut2','ut1','at','tr','an','max','weightcategory']
fields = ['rest','ut2','ut1','at','tr','an','max']
def clean_rest(self):