Skip to content

Commit 86a8bf2

Browse files
committed
Fix startrails moonmode settings, fixes #2832
The toggle is inverted and the fields should actually be disabled when the toggle is off. Added a "inverted" parameter for the fields and made the texts a bit clearer
1 parent 00a0328 commit 86a8bf2

2 files changed

Lines changed: 17 additions & 12 deletions

File tree

indi_allsky/flask/forms.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4470,7 +4470,7 @@ class IndiAllskyConfigForm(FlaskForm):
44704470
REALTIME_KEOGRAM__SAVE_INTERVAL = IntegerField('Save Interval', validators=[REALTIME_KEOGRAM__SAVE_INTERVAL_validator])
44714471
REALTIME_KEOGRAM__LABEL = BooleanField('Label Realtime Keogram')
44724472
STARTRAILS_SUN_ALT_THOLD = FloatField('Star Trails Max Sun Altitude', validators=[DataRequired(), STARTRAILS_SUN_ALT_THOLD_validator])
4473-
STARTRAILS_MOONMODE_THOLD = BooleanField('Star Trails Exclude Moon Mode')
4473+
STARTRAILS_MOONMODE_THOLD = BooleanField('Star Trails: Use Camera Moon Mode Thresholds')
44744474
STARTRAILS_MOON_ALT_THOLD = FloatField('Custom Max Moon Altitude', validators=[DataRequired(), STARTRAILS_MOON_ALT_THOLD_validator])
44754475
STARTRAILS_MOON_PHASE_THOLD = FloatField('Custom Max Moon Phase', validators=[DataRequired(), STARTRAILS_MOON_PHASE_THOLD_validator])
44764476
STARTRAILS_MAX_ADU = IntegerField('Star Trails Max ADU', validators=[DataRequired(), STARTRAILS_MAX_ADU_validator])

indi_allsky/flask/templates/config.html

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4404,7 +4404,7 @@ <h2 class="accordion-header">
44044404
<div id="STARTRAILS_MOONMODE_THOLD-error" class="invalid-feedback text-danger" style="display: none;"></div>
44054405
</div>
44064406
</div>
4407-
<div class="col-sm-8">Exclude images during moonmode</div>
4407+
<div class="col-sm-8">When enabled, use the camera moon mode thresholds to exclude images. When disabled, use the custom thresholds below.</div>
44084408
</div>
44094409

44104410
<div class="form-group row">
@@ -4415,7 +4415,7 @@ <h2 class="accordion-header">
44154415
{{ form_config.STARTRAILS_MOON_ALT_THOLD(class='form-control bg-secondary') }}
44164416
<div id="STARTRAILS_MOON_ALT_THOLD-error" class="invalid-feedback text-danger" style="display: none;"></div>
44174417
</div>
4418-
<div class="col-sm-8">Custom moon altitude threshold (91 is disabled)</div>
4418+
<div class="col-sm-8">Exclude images when moon altitude exceeds this value in degrees. Both altitude and phase must be exceeded to exclude (AND logic). 91 disables the check (moon can never reach 91°). A reasonable starting point is 30°.</div>
44194419
</div>
44204420

44214421
<div class="form-group row">
@@ -4426,7 +4426,7 @@ <h2 class="accordion-header">
44264426
{{ form_config.STARTRAILS_MOON_PHASE_THOLD(class='form-control bg-secondary') }}
44274427
<div id="STARTRAILS_MOON_PHASE_THOLD-error" class="invalid-feedback text-danger" style="display: none;"></div>
44284428
</div>
4429-
<div class="col-sm-8">Custom moon phase threshold (101 is disabled)</div>
4429+
<div class="col-sm-8">Exclude images when moon phase exceeds this percentage. Both altitude and phase must be exceeded to exclude (AND logic). 101 disables the check (moon phase can never exceed 100%). A reasonable starting point is 50%.</div>
44304430
</div>
44314431

44324432
<div class="form-group row">
@@ -10683,10 +10683,12 @@ <h2 class="accordion-header">
1068310683
);
1068410684
}
1068510685

10686-
function group_on_change(trigger_checkbox_field, group_fields, group_checkbox_fields) {
10686+
function group_on_change(trigger_checkbox_field, group_fields, group_checkbox_fields, inverted=false) {
1068710687
$('#' + trigger_checkbox_field).on('change', function() {
10688-
// logic is reversed
10689-
if (!$('#' + trigger_checkbox_field).prop('checked')) {
10688+
var checked = $('#' + trigger_checkbox_field).prop('checked');
10689+
var enable = inverted ? !checked : checked;
10690+
10691+
if (!enable) {
1069010692
group_fields.forEach(item => {
1069110693
$('#' + item).attr({'readonly': true, 'disabled': true});
1069210694
$('#' + item).addClass('bg-dark text-secondary');
@@ -10709,8 +10711,11 @@ <h2 class="accordion-header">
1070910711
}
1071010712

1071110713

10712-
function group_on_ready(trigger_checkbox_field, group_fields, group_checkbox_fields) {
10713-
if (!$('#' + trigger_checkbox_field).prop('checked')) {
10714+
function group_on_ready(trigger_checkbox_field, group_fields, group_checkbox_fields, inverted=false) {
10715+
var checked = $('#' + trigger_checkbox_field).prop('checked');
10716+
var enable = inverted ? !checked : checked;
10717+
10718+
if (!enable) {
1071410719
group_fields.forEach(item => {
1071510720
$('#' + item).attr({'readonly': true, 'disabled': true});
1071610721
$('#' + item).addClass('bg-dark text-secondary');
@@ -10818,8 +10823,8 @@ <h2 class="accordion-header">
1081810823
'STARTRAILS_MOON_PHASE_THOLD',
1081910824
];
1082010825

10821-
// startrails moonmode
10822-
group_on_change('STARTRAILS_MOONMODE_THOLD', group_fields_st_moonmode, []);
10826+
// startrails moonmode - custom thresholds are used when moon mode exclusion is OFF
10827+
group_on_change('STARTRAILS_MOONMODE_THOLD', group_fields_st_moonmode, [], true);
1082310828

1082410829

1082510830
// nonlocal assets
@@ -11279,7 +11284,7 @@ <h2 class="accordion-header">
1127911284

1128011285

1128111286
// startrails moonmode
11282-
group_on_ready('STARTRAILS_MOONMODE_THOLD', group_fields_st_moonmode, []);
11287+
group_on_ready('STARTRAILS_MOONMODE_THOLD', group_fields_st_moonmode, [], true);
1128311288

1128411289

1128511290
// nonlocal assets

0 commit comments

Comments
 (0)