Skip to content

Commit b48f724

Browse files
committed
Fix fan_temp0 update process
1 parent dbddd67 commit b48f724

File tree

3 files changed

+32
-25
lines changed

3 files changed

+32
-25
lines changed

www/inc/common.php

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -652,7 +652,12 @@ function updBootConfigTxt($action, $value) {
652652
if ($value == '#') {
653653
sysCmd('sed -i s/^dtparam=fan_temp0/#dtparam=fan_temp0/ ' . BOOT_CONFIG_TXT);
654654
} else {
655-
sysCmd('sed -i s/^dtparam=fan_temp0.*/dtparam=' . $value . '/ ' . BOOT_CONFIG_TXT);
655+
$result = sysCmd('cat ' . BOOT_CONFIG_TXT . ' | grep -c -e ^#dtparam=fan_temp0')[0];
656+
if ($result == '0') {
657+
sysCmd('sed -i s/^dtparam=fan_temp0.*/dtparam=' . $value . '/ ' . BOOT_CONFIG_TXT);
658+
} else {
659+
sysCmd('sed -i s/^#dtparam=fan_temp0.*/dtparam=' . $value . '/ ' . BOOT_CONFIG_TXT);
660+
}
656661
}
657662
break;
658663
case 'upd_disable_bt':

www/sys-config.php

Lines changed: 25 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -134,29 +134,31 @@
134134
phpSession('write', 'reduce_power', $_POST['reduce_power']);
135135
}
136136

137-
if (isset($_POST['fan_temp0']) && $_POST['fan_temp0'] != $_SESSION['fan_temp0']) {
138-
// Format is: Threshold 45-55, Target 40-50, Speed 75-125
139-
$valid = true;
140-
$parts = explode(',', $_POST['fan_temp0']);
141-
if ($parts[0] < 45 || $parts[0] > 55) {
142-
$valid = false;
143-
$msg = 'Threshold must be between 45-55.';
144-
} else if ($parts[1] < 40 || $parts[1] > 50) {
145-
$valid = false;
146-
$msg = 'Target must be between 40-50.';
147-
} else if ($parts[1] >= $parts[0]) {
148-
$valid = false;
149-
$msg = 'Target must be less than threshold.';
150-
} else if ($parts[2] < 75 || $parts[2] > 125) {
151-
$valid = false;
152-
$msg = 'Speed must be between 75-125.';
153-
}
154-
if ($valid == false) {
155-
$_SESSION['notify']['title'] = NOTIFY_TITLE_ALERT;
156-
$_SESSION['notify']['msg'] = $msg;
157-
} else {
158-
submitJob('fan_temp0', formatFanTemp0Params($_POST['fan_temp0']), NOTIFY_TITLE_INFO, NOTIFY_MSG_SYSTEM_RESTART_REQD);
159-
phpSession('write', 'fan_temp0', $_POST['fan_temp0']);
137+
if (isset($_POST['update_fan_temp0'])) {
138+
if (isset($_POST['fan_temp0']) && $_POST['fan_temp0'] != $_SESSION['fan_temp0']) {
139+
// Format is: Threshold 45-55, Target 40-50, Speed 75-125
140+
$valid = true;
141+
$parts = explode(',', $_POST['fan_temp0']);
142+
if ($parts[0] < 45 || $parts[0] > 55) {
143+
$valid = false;
144+
$msg = 'Threshold must be between 45-55.';
145+
} else if ($parts[1] < 40 || $parts[1] > 50) {
146+
$valid = false;
147+
$msg = 'Target must be between 40-50.';
148+
} else if ($parts[1] >= $parts[0]) {
149+
$valid = false;
150+
$msg = 'Target must be less than threshold.';
151+
} else if ($parts[2] < 75 || $parts[2] > 125) {
152+
$valid = false;
153+
$msg = 'Speed must be between 75-125.';
154+
}
155+
if ($valid == false) {
156+
$_SESSION['notify']['title'] = NOTIFY_TITLE_ALERT;
157+
$_SESSION['notify']['msg'] = $msg;
158+
} else {
159+
submitJob('fan_temp0', formatFanTemp0Params($_POST['fan_temp0']), NOTIFY_TITLE_INFO, NOTIFY_MSG_SYSTEM_RESTART_REQD);
160+
phpSession('write', 'fan_temp0', $_POST['fan_temp0']);
161+
}
160162
}
161163
}
162164

www/templates/sys-config.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ <h1 class="sys-config">System</h1>
160160
<div class="$_fan_temp0_hide">
161161
<label class="control-label" for="fan-temp0">Fan control</label>
162162
<div class="controls">
163-
<input class="config-input-large" type="text" id="fan-temp0" name="fan_temp0" value="$_select[fan_temp0]" required>
163+
<input class="config-input-large" type="text" id="fan-temp0" name="fan_temp0" value="$_select[fan_temp0]">
164164
<button class="btn btn-primary btn-small config-btn-set btn-submit" type="submit" name="update_fan_temp0" value="novalue"><i class="fa fa-solid fa-sharp fa-arrow-turn-down-left"></i></button>
165165
<span class="config-help-static">
166166
Format is: Threshold 45-55C, Target 40-50C, Speed 75-125.<br>

0 commit comments

Comments
 (0)