Compare commits
1 Commits
2760068cde
...
fix-splitd
Author | SHA1 | Date | |
---|---|---|---|
7dfd91421e |
@ -1,8 +1,5 @@
|
||||
.git
|
||||
.githooks
|
||||
.mypy_cache
|
||||
.pytest_cache
|
||||
src/web/static/*
|
||||
.venv
|
||||
.githooks
|
||||
.vscode
|
||||
node_modules
|
||||
src/web/static/*
|
||||
node_modules
|
@ -2,6 +2,7 @@
|
||||
|
||||
* New
|
||||
* When adding session, pre-select game with the last session
|
||||
* Date and time input fields now have proper pickers
|
||||
|
||||
## 0.2.4 / 2023-01-16 19:39+01:00
|
||||
|
||||
|
@ -4,6 +4,23 @@ from .models import Game, Platform, Purchase, Session
|
||||
|
||||
|
||||
class SessionForm(forms.ModelForm):
|
||||
custom_datetime_widget = forms.SplitDateTimeWidget(
|
||||
date_format=("%d-%m-%Y"),
|
||||
time_format=("%H:%M"),
|
||||
date_attrs={"type": "date"},
|
||||
time_attrs={"type": "time"},
|
||||
)
|
||||
timestamp_start = forms.SplitDateTimeField(
|
||||
input_date_formats="['%d-%m-%Y]",
|
||||
input_time_formats="['%H:%M']",
|
||||
widget=custom_datetime_widget,
|
||||
)
|
||||
timestamp_end = forms.SplitDateTimeField(
|
||||
input_date_formats="['%d-%m-%Y]",
|
||||
input_time_formats="['%H:%M']",
|
||||
widget=custom_datetime_widget,
|
||||
)
|
||||
|
||||
class Meta:
|
||||
model = Session
|
||||
fields = [
|
||||
@ -14,11 +31,27 @@ class SessionForm(forms.ModelForm):
|
||||
"note",
|
||||
]
|
||||
|
||||
# fields_classes = {
|
||||
# "timestamp_start": custom_datetime_field,
|
||||
# "timestamp_end": custom_datetime_field,
|
||||
# }
|
||||
# widgets = {
|
||||
# "timestamp_start": custom_datetime_widget,
|
||||
# "timestamp_end": custom_datetime_widget,
|
||||
# }
|
||||
|
||||
|
||||
class PurchaseForm(forms.ModelForm):
|
||||
class Meta:
|
||||
model = Purchase
|
||||
fields = ["game", "platform", "date_purchased", "date_refunded"]
|
||||
custom_date_widget = forms.DateInput(
|
||||
format=("%d-%m-%Y"), attrs={"type": "date"}
|
||||
)
|
||||
widgets = {
|
||||
"date_purchased": custom_date_widget,
|
||||
"date_refunded": custom_date_widget,
|
||||
}
|
||||
|
||||
|
||||
class GameForm(forms.ModelForm):
|
||||
|
@ -23,7 +23,11 @@ def add_session(request):
|
||||
context = {}
|
||||
now = now_with_tz()
|
||||
last = Session.objects.all().last()
|
||||
initial = {"timestamp_start": now, "purchase": last.purchase}
|
||||
initial = {
|
||||
"timestamp_start_0": now.date(),
|
||||
"timestamp_start_1": now.time(),
|
||||
"purchase": last.purchase,
|
||||
}
|
||||
form = SessionForm(request.POST or None, initial=initial)
|
||||
if form.is_valid():
|
||||
form.save()
|
||||
|
Reference in New Issue
Block a user