basic PlannedSession object in models.py
This commit is contained in:
@@ -5,7 +5,7 @@ from django.contrib.auth.models import User
|
|||||||
from .models import (
|
from .models import (
|
||||||
Rower, Workout,GraphImage,FavoriteChart,SiteAnnouncement,
|
Rower, Workout,GraphImage,FavoriteChart,SiteAnnouncement,
|
||||||
Team,TeamInvite,TeamRequest,
|
Team,TeamInvite,TeamRequest,
|
||||||
WorkoutComment,C2WorldClassAgePerformance,
|
WorkoutComment,C2WorldClassAgePerformance,PlannedSession,
|
||||||
)
|
)
|
||||||
|
|
||||||
# Register your models here so you can use them in the Admin module
|
# Register your models here so you can use them in the Admin module
|
||||||
@@ -43,11 +43,17 @@ class TeamRequestAdmin(admin.ModelAdmin):
|
|||||||
|
|
||||||
class WorkoutCommentAdmin(admin.ModelAdmin):
|
class WorkoutCommentAdmin(admin.ModelAdmin):
|
||||||
list_display = ('created','user','workout')
|
list_display = ('created','user','workout')
|
||||||
|
|
||||||
|
class PlannedSessionAdmin(admin.ModelAdmin):
|
||||||
|
list_display = ('name','startdate','enddate','manager','sessionvalue','sessionunit')
|
||||||
|
|
||||||
|
class GraphImageAdmin(admin.ModelAdmin):
|
||||||
|
list_display = ('creationdatetime','workout','filename')
|
||||||
|
|
||||||
admin.site.unregister(User)
|
admin.site.unregister(User)
|
||||||
admin.site.register(User,UserAdmin)
|
admin.site.register(User,UserAdmin)
|
||||||
admin.site.register(Workout,WorkoutAdmin)
|
admin.site.register(Workout,WorkoutAdmin)
|
||||||
admin.site.register(GraphImage)
|
admin.site.register(GraphImage,GraphImageAdmin)
|
||||||
admin.site.register(Team,TeamAdmin)
|
admin.site.register(Team,TeamAdmin)
|
||||||
admin.site.register(FavoriteChart,FavoriteChartAdmin)
|
admin.site.register(FavoriteChart,FavoriteChartAdmin)
|
||||||
admin.site.register(SiteAnnouncement,SiteAnnouncementAdmin)
|
admin.site.register(SiteAnnouncement,SiteAnnouncementAdmin)
|
||||||
@@ -56,3 +62,5 @@ admin.site.register(TeamRequest,TeamRequestAdmin)
|
|||||||
admin.site.register(WorkoutComment,WorkoutCommentAdmin)
|
admin.site.register(WorkoutComment,WorkoutCommentAdmin)
|
||||||
admin.site.register(C2WorldClassAgePerformance,
|
admin.site.register(C2WorldClassAgePerformance,
|
||||||
C2WorldClassAgePerformanceAdmin)
|
C2WorldClassAgePerformanceAdmin)
|
||||||
|
admin.site.register(PlannedSession,PlannedSessionAdmin)
|
||||||
|
|
||||||
|
|||||||
@@ -1387,4 +1387,85 @@ class WorkoutCommentForm(ModelForm):
|
|||||||
widgets = {
|
widgets = {
|
||||||
'comment': forms.Textarea,
|
'comment': forms.Textarea,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# model for Planned Session (Workout, Challenge, Test)
|
||||||
|
class PlannedSession(models.Model):
|
||||||
|
|
||||||
|
sessiontypechoices = (
|
||||||
|
('session','Training Session'),
|
||||||
|
('challenge','Challenge'),
|
||||||
|
('test','Mandatory Test'),
|
||||||
|
)
|
||||||
|
|
||||||
|
sessionmodechoices = (
|
||||||
|
('distance','Distance'),
|
||||||
|
('time','Time')
|
||||||
|
)
|
||||||
|
|
||||||
|
criteriumchoices = (
|
||||||
|
('none','None'),
|
||||||
|
('minimum','At Least'),
|
||||||
|
('exact','Exactly'),
|
||||||
|
)
|
||||||
|
|
||||||
|
verificationchoices = (
|
||||||
|
('none','None'),
|
||||||
|
('automatic','Automatic'),
|
||||||
|
('manual','Manual')
|
||||||
|
)
|
||||||
|
|
||||||
|
sessionunitchoices = (
|
||||||
|
('min','minutes'),
|
||||||
|
('km','km'),
|
||||||
|
('m','meters')
|
||||||
|
)
|
||||||
|
|
||||||
|
manager = models.ForeignKey(User)
|
||||||
|
name = models.CharField(max_length=150,blank=True)
|
||||||
|
comment = models.TextField(max_length=300,blank=True)
|
||||||
|
startdate = models.DateField(default=timezone.now,
|
||||||
|
verbose_name='Start Date')
|
||||||
|
enddate = models.DateField(default=timezone.now,
|
||||||
|
verbose_name='End Date')
|
||||||
|
sessiontype = models.CharField(default='session',
|
||||||
|
choices=sessiontypechoices,
|
||||||
|
max_length=150)
|
||||||
|
sessionvalue = models.IntegerField(default=60,verbose_name'Value')
|
||||||
|
sessionunit = models.CharField(
|
||||||
|
default='min',choices=sessionunitchoices,
|
||||||
|
max_length=150,
|
||||||
|
verbose_name='Unit')
|
||||||
|
criterium = models.CharField(
|
||||||
|
default='none',
|
||||||
|
choices=criteriumchoices,
|
||||||
|
max_length=150)
|
||||||
|
verification = models.CharField(
|
||||||
|
default='none',
|
||||||
|
max_length=150,
|
||||||
|
choices=verificationchoices
|
||||||
|
)
|
||||||
|
|
||||||
|
team = models.ManyToManyField(Team,blank=True)
|
||||||
|
rower = models.ManyToManyField(Rower,blank=True)
|
||||||
|
|
||||||
|
sessionmode = models.CharField(default='distance',
|
||||||
|
choices=sessionmodechoices,
|
||||||
|
max_length=150)
|
||||||
|
|
||||||
|
hasranking = models.BooleanField(default=False)
|
||||||
|
|
||||||
|
class PlannedSessionForm(ModelForm):
|
||||||
|
class Meta:
|
||||||
|
model = PlannedSession
|
||||||
|
fields = ['name','comment','startdate','enddate','sessionvalue',
|
||||||
|
'sessionunit']
|
||||||
|
widgets = {
|
||||||
|
'comment': forms.Textarea,
|
||||||
|
'startdate': SelectDateWidget(
|
||||||
|
years=range(
|
||||||
|
timezone.now().year-1,timezone.now().year+1)),
|
||||||
|
'enddate': SelectDateWidget(
|
||||||
|
years=range(
|
||||||
|
timezone.now().year-1,timezone.now().year+1)),
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user