Added ability to enter time remaining on RF timer instead of specifying a date/time explicitely.

Addresses #15
This commit is contained in:
Adarnof 2015-11-28 01:32:36 +00:00
parent c49804c95c
commit d069ddb3c0
2 changed files with 12 additions and 3 deletions

View File

@ -1,4 +1,6 @@
from django import forms
from django.core.validators import MaxValueValidator, MinValueValidator
class TimerForm(forms.Form):
@ -11,5 +13,7 @@ class TimerForm(forms.Form):
planet_moon = forms.CharField(max_length=254, label="Planet/Moon", required=False, initial="")
structure = forms.ChoiceField(choices=structure_choices, required=True, label="Structure Type")
fleet_type = forms.ChoiceField(choices=fleet_type_choices, required=True, label="Fleet Type")
eve_time = forms.DateTimeField(required=True, label="Eve Time")
important = forms.BooleanField(label="Important", required=False)
days_left = forms.IntegerField(required=False, label="Reinforced Days Remaining", validators=[MinValueValidator(0)])
hours_left = forms.IntegerField(required=False, label="Reinforced Hours Remaining", validators=[MinValueValidator(0), MaxValueValidator(23)])
minutes_left = forms.IntegerField(required=False, label="Required Minutes Remaining", validators=[MinValueValidator(0), MaxValueValidator(59)])
important = forms.BooleanField(label="Important", required=False)

View File

@ -46,6 +46,11 @@ def add_timer_view(request):
character = EveManager.get_character_by_id(auth_info.main_char_id)
corporation = EveManager.get_corporation_info_by_id(character.corporation_id)
# calculate future time
future_time = datetime.timedelta(days=form.cleaned_data['days_left'], hours=form.cleaned_data['hours_left'], minutes=form.cleaned_data['minutes_left'])
current_time = datetime.datetime.utcnow()
eve_time = current_time + future_time
# handle valid form
timer = Timer()
timer.name = form.cleaned_data['name']
@ -53,7 +58,7 @@ def add_timer_view(request):
timer.planet_moon = form.cleaned_data['planet_moon']
timer.structure = form.cleaned_data['structure']
timer.fleet_type = form.cleaned_data['fleet_type']
timer.eve_time = form.cleaned_data['eve_time']
timer.eve_time = eve_time
timer.important = form.cleaned_data['important']
timer.eve_character = character
timer.eve_corp = corporation