Exercise sorting
This commit is contained in:
parent
78c6dbee71
commit
693893eee4
@ -3,15 +3,18 @@ from abc import ABC
|
|||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from django.utils.html import format_html
|
from django.utils.html import format_html
|
||||||
from django.utils.translation import ugettext_lazy as _
|
from django.utils.translation import ugettext_lazy as _
|
||||||
|
#from treenode.admin import TreeNodeModelAdmin
|
||||||
|
#from treenode.forms import TreeNodeForm
|
||||||
|
|
||||||
from .models import ExerciseType, ExerciseTypeAlternative, ExerciseTypeParents
|
from .models import ExerciseType, ExerciseTypeAlternative, ExerciseTypeParents
|
||||||
from .models import Product
|
from .models import Product
|
||||||
from .models import ExerciseDevice, ExerciseDeviceTranslation, ExerciseTypeDevice, ExerciseDeviceAlternative
|
from .models import ExerciseDevice, ExerciseDeviceTranslation, ExerciseTypeDevice, ExerciseDeviceAlternative
|
||||||
from .models import ExerciseTypeImage
|
from .models import ExerciseTypeImage
|
||||||
from .models import ExerciseTypeTranslation
|
from .models import ExerciseTypeTranslation
|
||||||
from .models import ExerciseTreeTranslation
|
from .models import ExerciseTreeTranslation
|
||||||
from .models import ExerciseTree, ExerciseTreeParents
|
from .models import ExerciseTree
|
||||||
|
from .models import ExerciseTreeParents
|
||||||
from .models import ExercisePlanTranslation
|
from .models import ExercisePlanTranslation
|
||||||
from .models import ExercisePlanDetail
|
|
||||||
from .models import ExercisePlan
|
from .models import ExercisePlan
|
||||||
from .models import ExercisePlanTemplate, ExercisePlanTemplateTranslation, ExercisePlanTemplateDetail
|
from .models import ExercisePlanTemplate, ExercisePlanTemplateTranslation, ExercisePlanTemplateDetail
|
||||||
|
|
||||||
@ -34,6 +37,18 @@ class ExerciseTreeParentsInline(admin.TabularInline):
|
|||||||
extra = 0
|
extra = 0
|
||||||
|
|
||||||
|
|
||||||
|
'''
|
||||||
|
|
||||||
|
|
||||||
|
class ExerciseTreeParentAdmin(TreeNodeModelAdmin):
|
||||||
|
treenode_display_mode = TreeNodeModelAdmin.TREENODE_DISPLAY_MODE_ACCORDION
|
||||||
|
list_display = ('name',)
|
||||||
|
|
||||||
|
# use TreeNodeForm to automatically exclude invalid parent choices
|
||||||
|
form = TreeNodeForm
|
||||||
|
'''
|
||||||
|
|
||||||
|
|
||||||
class ExerciseTreeAdmin(admin.ModelAdmin):
|
class ExerciseTreeAdmin(admin.ModelAdmin):
|
||||||
list_display = ('tree_id', 'name_colored', 'active')
|
list_display = ('tree_id', 'name_colored', 'active')
|
||||||
search_fields = ['name']
|
search_fields = ['name']
|
||||||
@ -158,8 +173,10 @@ class TranslationPlanTemplateInline(admin.TabularInline):
|
|||||||
|
|
||||||
class TranslationPlanTemplateDetailInline(admin.TabularInline):
|
class TranslationPlanTemplateDetailInline(admin.TabularInline):
|
||||||
model = ExercisePlanTemplateDetail
|
model = ExercisePlanTemplateDetail
|
||||||
|
verbose_name = 'name'
|
||||||
fields = ('exercise_type',)
|
fields = ('exercise_type',)
|
||||||
extra = 0
|
extra = 0
|
||||||
|
ordering = ('exercise_type',)
|
||||||
|
|
||||||
|
|
||||||
class ExercisePlanTemplateAdmin(admin.ModelAdmin):
|
class ExercisePlanTemplateAdmin(admin.ModelAdmin):
|
||||||
@ -268,7 +285,7 @@ class ExerciseDeviceAdmin(admin.ModelAdmin):
|
|||||||
admin.site.register(ExerciseType, ExerciseTypeAdmin)
|
admin.site.register(ExerciseType, ExerciseTypeAdmin)
|
||||||
admin.site.register(ExerciseTree, ExerciseTreeAdmin)
|
admin.site.register(ExerciseTree, ExerciseTreeAdmin)
|
||||||
admin.site.register(ExercisePlanTemplate, ExercisePlanTemplateAdmin)
|
admin.site.register(ExercisePlanTemplate, ExercisePlanTemplateAdmin)
|
||||||
admin.site.register(ExercisePlan, ExercisePlanAdmin)
|
#admin.site.register(ExercisePlan, ExercisePlanAdmin)
|
||||||
admin.site.register(Product, ProductAdmin)
|
admin.site.register(Product, ProductAdmin)
|
||||||
admin.site.register(ExerciseDevice, ExerciseDeviceAdmin)
|
admin.site.register(ExerciseDevice, ExerciseDeviceAdmin)
|
||||||
admin.autodiscover()
|
admin.autodiscover()
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
from django.db import models
|
from django.db import models
|
||||||
from django.utils.safestring import mark_safe
|
from django.utils.safestring import mark_safe
|
||||||
from django.utils.translation import ugettext_lazy as _
|
from django.utils.translation import ugettext_lazy as _
|
||||||
|
#from treenode.models import TreeNodeModel
|
||||||
|
|
||||||
|
|
||||||
class LanguageTypes(models.TextChoices):
|
class LanguageTypes(models.TextChoices):
|
||||||
@ -26,6 +27,7 @@ class ExerciseDevice(models.Model):
|
|||||||
db_table = 'exercise_device'
|
db_table = 'exercise_device'
|
||||||
verbose_name = _("Exercise Device")
|
verbose_name = _("Exercise Device")
|
||||||
verbose_name_plural = _("Exercise Devices")
|
verbose_name_plural = _("Exercise Devices")
|
||||||
|
ordering = ['name']
|
||||||
|
|
||||||
def image_tag(self):
|
def image_tag(self):
|
||||||
return mark_safe('<img src="/media/%s" width="30%" height="30%" />' % self.image_url)
|
return mark_safe('<img src="/media/%s" width="30%" height="30%" />' % self.image_url)
|
||||||
@ -82,6 +84,7 @@ class ExerciseTree(models.Model):
|
|||||||
db_table = 'exercise_tree'
|
db_table = 'exercise_tree'
|
||||||
verbose_name = _("Exercise Tree")
|
verbose_name = _("Exercise Tree")
|
||||||
verbose_name_plural = _("Exercise Tree Items")
|
verbose_name_plural = _("Exercise Tree Items")
|
||||||
|
ordering = ['name']
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return self.name
|
return self.name
|
||||||
@ -103,16 +106,17 @@ class ExerciseTreeTranslation(models.Model):
|
|||||||
|
|
||||||
|
|
||||||
class ExerciseTreeParents(models.Model):
|
class ExerciseTreeParents(models.Model):
|
||||||
|
#treenode_display_field = 'name'
|
||||||
exercise_tree_parents_id = models.AutoField(primary_key=True)
|
exercise_tree_parents_id = models.AutoField(primary_key=True)
|
||||||
exercise_tree_parent = models.ForeignKey(ExerciseTree, on_delete=models.CASCADE,
|
exercise_tree_parent = models.ForeignKey(ExerciseTree, on_delete=models.CASCADE,
|
||||||
related_name=_('exercise_tree_parent'), help_text=_('Parent menu'), blank=True)
|
related_name=_('exercise_tree_parent'),
|
||||||
exercise_tree_child = models.ForeignKey(ExerciseTree, on_delete=models.CASCADE,
|
help_text=_('Parent menu'), blank=True)
|
||||||
related_name=_('exercise_tree_child'), help_text=_('Actual menu'))
|
exercise_tree_child = models.ForeignKey(ExerciseTree, on_delete=models.CASCADE)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
db_table = 'exercise_tree_parents'
|
db_table = 'exercise_tree_parents'
|
||||||
verbose_name = _("Exercise Tree Parent")
|
verbose_name = _("Menu Tree Representation")
|
||||||
verbose_name_plural = _("Exercise Tree Parents")
|
verbose_name_plural = _("Menu Tree Representation")
|
||||||
unique_together = [['exercise_tree_parent', 'exercise_tree_child']]
|
unique_together = [['exercise_tree_parent', 'exercise_tree_child']]
|
||||||
|
|
||||||
|
|
||||||
@ -149,6 +153,7 @@ class ExerciseType(models.Model):
|
|||||||
db_table = 'exercise_type'
|
db_table = 'exercise_type'
|
||||||
verbose_name = _("Exercise")
|
verbose_name = _("Exercise")
|
||||||
verbose_name_plural = _("Exercises")
|
verbose_name_plural = _("Exercises")
|
||||||
|
ordering = ['name']
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return self.name
|
return self.name
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
django==3.1.5
|
django==3.1.7
|
||||||
asgiref==3.2.10
|
asgiref==3.2.10
|
||||||
certifi==2020.6.20
|
certifi==2020.6.20
|
||||||
chardet==3.0.4
|
chardet==3.0.4
|
||||||
|
Loading…
Reference in New Issue
Block a user