User can edit name and email address
This commit is contained in:
@@ -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):
|
||||
|
||||
Reference in New Issue
Block a user