Operator Panel: Implement adjustable refresh rate.

This commit is contained in:
Nate 2020-10-14 14:13:51 -06:00
parent 91f3575747
commit 9550ea7c05
2 changed files with 29 additions and 2 deletions

View File

@ -57,4 +57,15 @@
$y++;
$apps[$x]['permissions'][$y]['name'] = "operator_panel_on_demand";
?>
//default settings
$y=0;
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "569280f2-a433-4eaf-9c08-945efdc6cf8f";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "operator_panel";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "refresh";
$apps[$x]['default_settings'][$y]['default_setting_name'] = "numeric";
$apps[$x]['default_settings'][$y]['default_setting_value'] = "1500";
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the refresh rate in seconds (<=120) or milliseconds (>=500).";
$y++;
?>

View File

@ -185,8 +185,24 @@
<script language="JavaScript" type="text/javascript" src="<?php echo PROJECT_PATH; ?>/resources/jquery/jquery-ui.min.js"></script>
<script type="text/javascript">
<?php
//determine refresh rate
$refresh_default = 1500; //milliseconds
$refresh = is_numeric($_SESSION['operator_panel']['refresh']['numeric']) ? $_SESSION['operator_panel']['refresh']['numeric'] : $refresh_default;
if ($refresh <= 120) { //convert seconds to milliseconds
$refresh = $refresh * 1000;
}
else if ($refresh > 120 && $refresh < 500) {
$refresh = $refresh_default; //use default
}
else {
//>= 500, must be milliseconds
}
unset($refresh_default);
?>
//ajax refresh
var refresh = 1500;
var refresh = <?php echo $refresh; ?>;
var source_url = 'resources/content.php?' <?php if (isset($_GET['debug'])) { echo " + '&debug'"; } ?>;
var interval_timer_id;