@@ -129,6 +129,14 @@ def EXPOSURE_PERIOD_DAY_validator(form, field):
129129 raise ValidationError ('Exposure period must be 1.0 or more' )
130130
131131
132+ def FOCUS_DELAY_validator (form , field ):
133+ if not isinstance (field .data , (int , float )):
134+ raise ValidationError ('Please enter valid number' )
135+
136+ if field .data < 1.0 :
137+ raise ValidationError ('Focus delay must be 1.0 or more' )
138+
139+
132140def WB_FACTOR_validator (form , field ):
133141 if not isinstance (field .data , (int , float )):
134142 raise ValidationError ('Please enter valid number' )
@@ -849,6 +857,8 @@ class IndiAllskyConfigForm(FlaskForm):
849857 CCD_EXPOSURE_MIN = FloatField ('Min Exposure' , validators = [CCD_EXPOSURE_MIN_validator ])
850858 EXPOSURE_PERIOD = FloatField ('Exposure Period (Night)' , validators = [DataRequired (), EXPOSURE_PERIOD_validator ])
851859 EXPOSURE_PERIOD_DAY = FloatField ('Exposure Period (Day)' , validators = [DataRequired (), EXPOSURE_PERIOD_DAY_validator ])
860+ FOCUS_MODE = BooleanField ('Focus Mode' )
861+ FOCUS_DELAY = FloatField ('Focus Delay' , validators = [DataRequired (), FOCUS_DELAY_validator ])
852862 AUTO_WB = BooleanField ('Auto White Balance' )
853863 WBR_FACTOR = FloatField ('Red Balance Factor' , validators = [DataRequired (), WB_FACTOR_validator ])
854864 WBG_FACTOR = FloatField ('Green Balance Factor' , validators = [DataRequired (), WB_FACTOR_validator ])
@@ -1505,3 +1515,26 @@ class IndiAllskySetDateTimeForm(FlaskForm):
15051515
15061516 NEW_DATETIME = DateTimeLocalField ('New Datetime' , render_kw = {'step' : '1' }, format = '%Y-%m-%dT%H:%M:%S' , validators = [DataRequired ()])
15071517
1518+
1519+
1520+ class IndiAllskyFocusForm (FlaskForm ):
1521+ ZOOM_SELECT_choices = (
1522+ (2 , 'Off' ),
1523+ (3 , 'Low' ),
1524+ (5 , 'Medium' ),
1525+ (8 , 'High' ),
1526+ (12 , 'Extreme' ),
1527+ )
1528+ REFRESH_SELECT_choices = (
1529+ (2 , '2s' ),
1530+ (3 , '3s' ),
1531+ (4 , '4s' ),
1532+ (5 , '5s' ),
1533+ (10 , '10s' ),
1534+ (15 , '15s' ),
1535+ )
1536+
1537+
1538+ ZOOM_SELECT = SelectField ('Zoom' , choices = ZOOM_SELECT_choices , default = ZOOM_SELECT_choices [0 ][0 ], validators = [])
1539+ REFRESH_SELECT = SelectField ('Refresh' , choices = REFRESH_SELECT_choices , default = REFRESH_SELECT_choices [3 ][0 ], validators = [])
1540+
0 commit comments