diff --git a/rowers/interactiveplots.py b/rowers/interactiveplots.py index 8f8715e1..25a181c2 100644 --- a/rowers/interactiveplots.py +++ b/rowers/interactiveplots.py @@ -236,7 +236,10 @@ def interactive_activitychart(workouts,startdate,enddate,stack='type'): dates.append(dd) durations.append(du) types.append(w.workouttype) - rowers.append(w.user.user.first_name[0]+w.user.user.last_name[0]) + try: + rowers.append(w.user.user.first_name[0]+w.user.user.last_name[0]) + except IndexError: + rowers.append(str(w.user)) try: d = utc.localize(startdate) diff --git a/rowers/models.py b/rowers/models.py index 3ca03ad9..2fa222f5 100644 --- a/rowers/models.py +++ b/rowers/models.py @@ -987,6 +987,14 @@ class UserForm(ModelForm): model = User fields = ['first_name','last_name','email'] + def clean_first_name(self): + first_name = self.cleaned_data.get('first_name') + + if len(first_name): + return first_name + + raise forms.ValidationError('Please fill in your first name') + def clean_email(self): email = self.cleaned_data.get('email') diff --git a/templates/basebase.html b/templates/basebase.html index deca65f2..2a97d27c 100644 --- a/templates/basebase.html +++ b/templates/basebase.html @@ -117,7 +117,11 @@
{% if user.is_authenticated %}

+ {% if user.first_name %} {{ user.first_name }} + {% else %} + {{ user }} + {% endif %}

Edit user account, e.g. heart rate zones, power zones, email, teams