add all files

This commit is contained in:
Rucus
2026-02-17 09:29:34 -06:00
parent b8c8d67c67
commit 782d203799
21925 changed files with 2433086 additions and 0 deletions

View File

@@ -0,0 +1,37 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$val = $_POST['val'];
$query = "(SELECT DATE_FORMAT(`DATE`,'%h:%i:%s') AS timeonly, DATE_FORMAT(DATE,'%Y-%m-%d') AS dateonly, AVG(BOILER1SF) * (100-".$val.") / 100 * 1000 as BOILER1, AVG(BOILER2SF) * (100-".$val.") / 100 * 1000 as BOILER2, AVG(BOILER3SF) * (100-".$val.") / 100 * 1000 as BOILER3, AVG(BOILER4SF) * (100-".$val.") / 100 * 1000 as BOILER4, AVG(BOILER5SF) * (100-".$val.") / 100 * 1000 as BOILER5, AVG(BOILER6SF) * (100-".$val.") / 100 * 1000 as BOILER6, AVG(BOILER7SF) * (100-".$val.") / 100 * 1000 as BOILER7, AVG(BOILER8SF) * (100-".$val.") / 100 * 1000 as BOILER8
FROM trending WHERE TIME(`DATE`) BETWEEN '07:00:00' AND '23:59:59'
GROUP BY dateonly
ORDER BY id ASC)";
$result=mysqli_query($con,$query);
$array=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
$columnHeader = 'TEST';
$columnHeader = "Time" . "\t" ."Date" . "\t" . "Boiler 1" . "\t" . "Boiler 2" . "\t" . "Boiler 3" . "\t". "Boiler 4" . "\t". "Boiler 5" . "\t". "Boiler 6" . "\t". "Boiler 7" . "\t". "Boiler 8" . "\t";
$setData = '';
while ($rec = mysqli_fetch_row($array)) {
$rowData = '';
foreach ($rec as $value) {
$value = '"' . $value . '"' . "\t";
$rowData .= $value;
}
$setData .= trim($rowData) . "\n";
}
header("Content-type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=Boiler Steam 24hr Average.xls");
header("Pragma: no-cache");
header("Expires: 0");
echo ucwords($columnHeader) . "\n" . $setData . "\n";
?>

View File

@@ -0,0 +1,16 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = $_POST['query'];
$sql = "(SELECT DATE_FORMAT(`DATE`,'%h:%i:%s') AS timeonly, DATE_FORMAT(DATE,'%Y-%m-%d') AS dateonly, AVG(BOILER1SF) * (100-".$query.") / 100 * 1000 as BOILER1, AVG(BOILER2SF) * (100-".$query.") / 100 * 1000 as BOILER2, AVG(BOILER3SF) * (100-".$query.") / 100 * 1000 as BOILER3, AVG(BOILER4SF) * (100-".$query.") / 100 * 1000 as BOILER4, AVG(BOILER5SF) * (100-".$query.") / 100 * 1000 as BOILER5, AVG(BOILER6SF) * (100-".$query.") / 100 * 1000 as BOILER6, AVG(BOILER7SF) * (100-".$query.") / 100 * 1000 as BOILER7, AVG(BOILER8SF) * (100-".$query.") / 100 * 1000 as BOILER8
FROM trending WHERE TIME(`DATE`) BETWEEN '07:00:00' AND '23:59:59'
GROUP BY dateonly
ORDER BY id ASC
INTO OUTFILE 'actor.txt' )";
mysqli_close($con);
?>

View File

@@ -0,0 +1,67 @@
<?php
include("../dbinfo2.php");
// Check if database connection variables exist
if (!isset($host) || !isset($username) || !isset($password) || !isset($database)) {
die("Database configuration not found in dbinfo2.php");
}
$con = mysqli_connect($host, $username, $password, $database);
// Check connection
if (!$con) {
die("Connection failed: " . mysqli_connect_error());
}
// Define the moisture percentage if it's supposed to come from somewhere
// You may need to adjust this based on your requirements
$moisturePercent = 0; // or get from $_GET, $_POST, or database
$setSql = "(SELECT DATE_FORMAT(`DATE`,'%h:%i:%s') AS timeonly,
DATE_FORMAT(DATE,'%Y-%m-%d') AS dateonly,
AVG(BOILER1SF) * (100-".$moisturePercent.") / 100 * 1000 as BOILER1,
AVG(BOILER2SF) * (100-".$moisturePercent.") / 100 * 1000 as BOILER2,
AVG(BOILER3SF) * (100-".$moisturePercent.") / 100 * 1000 as BOILER3,
AVG(BOILER4SF) * (100-".$moisturePercent.") / 100 * 1000 as BOILER4,
AVG(BOILER5SF) * (100-".$moisturePercent.") / 100 * 1000 as BOILER5,
AVG(BOILER6SF) * (100-".$moisturePercent.") / 100 * 1000 as BOILER6,
AVG(BOILER5SF) * (100-".$moisturePercent.") / 100 * 1000 as BOILER7,
AVG(BOILER6SF) * (100-".$moisturePercent.") / 100 * 1000 as BOILER8,
FROM trending
WHERE TIME(`DATE`) BETWEEN '07:00:00' AND '23:59:59'
GROUP BY dateonly
ORDER BY id ASC)";
$result = mysqli_query($con, $setSql);
// Check query execution
if (!$result) {
die("Query failed: " . mysqli_error($con));
}
// Column headers matching the actual query columns
$columnHeader = "Time" . "\t" . "Date" . "\t" . "Boiler 1" . "\t" . "Boiler 2" . "\t" . "Boiler 3" . "\t" . "Boiler 4" . "\t" . "Boiler 5" . "\t" . "Boiler 6" . "\t" . "Boiler 7" . "\t" . "Boiler 8" . "\t";
$setData = '';
while ($rec = mysqli_fetch_row($result)) {
$rowData = '';
foreach ($rec as $value) {
$value = '"' . $value . '"' . "\t";
$rowData .= $value;
}
$setData .= trim($rowData) . "\n";
}
// Close database connection
mysqli_close($con);
// Set headers for Excel download
header("Content-type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=Boiler Steam 24hr Average.xls");
header("Pragma: no-cache");
header("Expires: 0");
echo ucwords($columnHeader) . "\n" . $setData . "\n";
?>

View File

@@ -0,0 +1,37 @@
<?php
include("../dbinfo2.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = $_GET['query'];
// gets value sent over search form
$setSql = "(SELECT DATE_FORMAT(`timestamp`,'%h:%i:%s') AS timeonly, DATE_FORMAT(timestamp,'%Y-%m-%d') AS dateonly, AVG(BLR1TOTSF) * 24 * 1000 * (100-".$query.") / 100 as BOILER1, AVG(BLR2TOTSF) * 24 * 1000 * (100-".$query.") / 100 as BOILER2, AVG(BLR3TOTSF) * 24 * 1000 * (100-".$query.") / 100 as BOILER3, AVG(BLR4TOTSF) * 24 * 1000 * (100-".$query.") / 100 as BOILER4, AVG(BLR5TOTSF) * 24 * 1000 * (100-".$query.") / 100 as BOILER5, AVG(BLR6TOTSF) * 24 * 1000 * (100-".$query.") / 100 as BOILER6, AVG(BLR7TOTSF) * 24 * 1000 * (100-".$query.") / 100 as BOILER7, AVG(BLR8TOTSF) * 24 * 1000 * (100-".$query.") / 100 as BOILER8
FROM boilerstm24hravg WHERE TIME(`timestamp`) BETWEEN '07:00:00' AND '23:59:59'
GROUP BY dateonly
ORDER BY id ASC)";
$result = mysqli_query($con, $setSql);
$columnHeader = 'TEST';
$columnHeader = "Time" . "\t" ."dateonly" . "\t" . "Boiler 1" . "\t" . "Boiler 2" . "\t" . "Boiler 3" . "\t". "Boiler 4" . "\t". "Boiler 5" . "\t". "Boiler 6" . "\t". "Boiler 7" . "\t". "Boiler 8" . "\t";
$setData = '';
while ($rec = mysqli_fetch_row($result)) {
$rowData = '';
foreach ($rec as $value) {
$value = '"' . $value . '"' . "\t";
$rowData .= $value;
}
$setData .= trim($rowData) . "\n";
}
header("Content-type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=Boiler Steam Total.xls");
header("Pragma: no-cache");
header("Expires: 0");
echo ucwords($columnHeader) . "\n" . $setData . "\n";
?>

View File

@@ -0,0 +1,71 @@
<?php
$username="corey";
$password="41945549";
$database="controls";
mysql_connect('127.0.0.1',$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$query = "SELECT * FROM boilerstm24hravg WHERE TIME(time) = '04:59:59' ORDER BY id DESC";
$result=mysql_query($query);
$num=mysql_numrows($result);
mysql_close();
?>
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="13" id="title">Boilers Total Steam Flow 24 Hour Average</td>
</tr>
<tr>
<td width="14%" id="title" colspan="2" bgcolor="#FFFFFF" align="center" width="16.6%"><font color="#000000">Date</font></td>
<td width="13.2%" id="title" colspan="2" bgcolor="#FFFFFF" align="center" width="16.6%"><font color="#000000">Boiler 1</font></td>
<td width="13.2%" id="title" colspan="2" bgcolor="#FFFFFF" align="center" width="16.6%"><font color="#000000">Boiler 2</font></td>
<td width="13.2%" id="title" colspan="2" bgcolor="#FFFFFF" align="center" width="16.6%"><font color="#000000">Boiler 3</font></td>
<td width="13.2%" id="title" colspan="2" bgcolor="#FFFFFF" align="center" width="16.6%"><font color="#000000">Boiler 4</font></td>
<td width="13.2%" id="title" colspan="2" bgcolor="#FFFFFF" align="center" width="16.6%"><font color="#000000">Boiler 5</font></td>
<td width="13.2%" id="title" colspan="2" bgcolor="#FFFFFF" align="center" width="16.6%"><font color="#000000">Boiler 6</font></td>
</tr>
</table>
<?php
$i=0;
while ($i < $num) {
$f1=mysql_result($result,$i,"BLR1TOTSF");
$f2=mysql_result($result,$i,"BLR2TOTSF");
$f3=mysql_result($result,$i,"BLR3TOTSF");
$f4=mysql_result($result,$i,"BLR4TOTSF");
$f5=mysql_result($result,$i,"BLR5TOTSF");
$f6=mysql_result($result,$i,"BLR6TOTSF");
$f7=mysql_result($result,$i,"TIME");
?>
<div id="stories">
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<tr>
<td width="14%" id="vtitle" bgcolor="#FFFFFF" align="left"><font color="#000000" ><?php echo $f7; ?></font></td>
<td width="6.6%" id="vtitle" bgcolor="#FFFFFF" align="left"><font color="#000000"><?php echo $f1; ?></font></td>
<td width="6.6%" id="vtitle" bgcolor="#FFFFFF" align="right"><font color="#000000">KPPH</font></td>
<td width="6.6%" id="vtitle" bgcolor="#FFFFFF" align="left"><font color="#000000"><?php echo $f2; ?></font></td>
<td width="6.6%" id="vtitle" bgcolor="#FFFFFF" align="right"><font color="#000000">KPPH</font></td>
<td width="6.6%" id="vtitle" bgcolor="#FFFFFF" align="left"><font color="#000000"><?php echo $f3; ?></font></td>
<td width="6.6%" id="vtitle" bgcolor="#FFFFFF" align="right"><font color="#000000">KPPH</font></td>
<td width="6.6%" id="vtitle" bgcolor="#FFFFFF" align="left"><font color="#000000"><?php echo $f4; ?></font></td>
<td width="6.6%" id="vtitle" bgcolor="#FFFFFF" align="right"><font color="#000000">KPPH</font></td>
<td width="6.6%" id="vtitle" bgcolor="#FFFFFF" align="left"><font color="#000000"><?php echo $f5; ?></font></td>
<td width="6.6%" id="vtitle" bgcolor="#FFFFFF" align="right"><font color="#000000">KPPH</font></td>
<td width="6.6%" id="vtitle" bgcolor="#FFFFFF" align="left"><font color="#000000"><?php echo $f6; ?></font></td>
<td width="6.6%" id="vtitle" bgcolor="#FFFFFF" align="right"><font color="#000000">KPPH</font></td>
</tr>
</div>
<?php
$i++;
}
?>

View File

@@ -0,0 +1,3 @@
<img src="http://192.168.1.21/screenlist/fullview/001.jpg"/>

View File

@@ -0,0 +1,4 @@
<?php
<img src="http://192.168.1.54/1.jpg" alt="Dinosaur" />
?>

View File

@@ -0,0 +1,124 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password, $database);
$query = "SELECT * FROM crystal ORDER BY id DESC LIMIT 1";
$result=mysqli_query($con, $query);
$array=mysqli_fetch_array($result, MYSQLI_ASSOC);
mysqli_close($con);
?>
<?php /*
$i=0;
while ($i < $num) {
$f1=mysql_result($result,$i,"w1temp");
$f2=mysql_result($result,$i,"w2temp");
$f3=mysql_result($result,$i,"w3temp");
$f4=mysql_result($result,$i,"w4temp");
$f5=mysql_result($result,$i,"w5temp");
$f6=mysql_result($result,$i,"w6temp");
$f7=mysql_result($result,$i,"w7temp");
$f8=mysql_result($result,$i,"e1temp");
$f9=mysql_result($result,$i,"e2temp");
$f10=mysql_result($result,$i,"e3temp");
$f11=mysql_result($result,$i,"e4temp");
$f12=mysql_result($result,$i,"e5temp");
$f13=mysql_result($result,$i,"e6temp");
$f14=mysql_result($result,$i,"e7temp");
$f15=mysql_result($result,$i,"inrectemp");
$f16=mysql_result($result,$i,"pumpouttemp");
*/ ?>
<div id="stories">
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">Crystalizers</td>
</tr>
<tr>
<td id="vtitle" id="padded">Inlet Receiver:</a></td>
<td id="sum-count"><?php echo $array['INRECTEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">West 1:</a></td>
<td id="sum-count"><?php echo $array['W1TEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">West 2:</a></td>
<td id="sum-count"><?php echo $array['W2TEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">West 3:</a></td>
<td id="sum-count"><?php echo $array['W3TEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">West 4:</a></td>
<td id="sum-count"><?php echo $array['W4TEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">West 5:</a></td>
<td id="sum-count"><?php echo $array['W5TEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">West 6:</a></td>
<td id="sum-count"><?php echo $array['W6TEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">West 7:</a></td>
<td id="sum-count"><?php echo $array['W7TEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">East 1:</a></td>
<td id="sum-count"><?php echo $array['E1TEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">East 2:</a></td>
<td id="sum-count"><?php echo $array['E2TEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">East 3:</a></td>
<td id="sum-count"><?php echo $array['E3TEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">East 4:</a></td>
<td id="sum-count"><?php echo $array['E4TEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">East 5:</a></td>
<td id="sum-count"><?php echo $array['E5TEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">East 6:</a></td>
<td id="sum-count"><?php echo $array['E6TEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr><tr>
<td id="vtitle" id="padded">East 7:</a></td>
<td id="sum-count"><?php echo $array['E7TEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Pump Outlet:</a></td>
<td id="sum-count"><?php echo $array['PUMPOUTTEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
</table>
</div>
<?php
?>

View File

@@ -0,0 +1,33 @@
<?php
$username="corey";
$password="41945549";
$database="controls";
mysql_connect('192.168.0.2',$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$query = "(SELECT date, 24hrnorth FROM plc WHERE (date LIKE '%04:55:2%' OR date LIKE '%04:55:0%' OR date LIKE '%04:55:4%' OR date LIKE '%04:55:5%' OR date LIKE '%04:56:1%' OR date LIKE '%04:56:3%' OR date LIKE '%04:58:5%' OR date LIKE '%04:58:4%' OR date LIKE '%04:56:2%' OR date LIKE '%04:59:2%' OR date LIKE '%04:59:3%') AND 24hrnorth not LIKE '0' ORDER BY id DESC)";
$result=mysql_query($query);
echo '<table id="table" border="1" style="margin: 5px auto;" width="900px" class="green">';
echo "<thead>";
echo "<tr>";
echo "<th>Timestamp</th>";
echo "<th>Dumps</th>";
echo "</tr>";
echo "</thead>";
echo "<tbody>";
while($row=mysql_fetch_assoc($result))
{
echo '<tr align="center">';
echo "<td>".$row [ 'date' ]."</td>";
echo "<td>".$row [ '24hrnorth' ]."</td>";
echo "</tr>";
}
echo "</tbody>";
echo "</table>";
mysql_close();
?>

View File

@@ -0,0 +1,53 @@
<style>
tr:nth-child(2n+1) {
background-color: #e5e5e5;
}
</style>
<?php
include("../items.php");
$con=mysqli_connect('192.168.0.9', 'corey', '41945549', 'controls');
$query="SELECT * FROM plc ORDER BY id DESC LIMIT 10000";
echo '<table border="1" cellspacing="2" cellpadding="2">
<tr>
<td> <font face="Arial">ID</font> </td>
<td> <font face="Arial">24hr East</font> </td>
<td> <font face="Arial">24hr West</font> </td>
<td> <font face="Arial">24hr West2</font> </td>
<td> <font face="Arial">Total East</font> </td>
<td> <font face="Arial">Total West</font> </td>
<td> <font face="Arial">Total West2</font> </td>
<td> <font face="Arial">DATE</font> </td>
</tr>';
if ($result = $con->query($query)) {
while ($row = $result->fetch_assoc()) {
$field1name = $row["id"];
$field2name = $row["24hrnorth"];
$field3name = $row["24hrsouth"];
$field6name = $row["24hrwest2"];
$field4name = $row["totnorth"];
$field5name = $row["totsouth"];
$field7name = $row["totwest2"];
$field8name = $row["date"];
echo '<tr>
<td>'.$field1name.'</td>
<td>'.$field2name.'</td>
<td>'.$field3name.'</td>
<td>'.$field6name.'</td>
<td>'.$field4name.'</td>
<td>'.$field5name.'</td>
<td>'.$field7name.'</td>
<td>'.$field8name.'</td>
</tr>';
}
$result->free();
}
?>
</body>
</html>

View File

@@ -0,0 +1,19 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT TIMEDIFF ((SELECT date FROM plc GROUP BY totnorth ORDER BY id DESC LIMIT 1),(SELECT date FROM plc GROUP BY totnorth ORDER BY id DESC LIMIT 1, 1)) AS time";
$result=mysqli_query($con,$query);
$include2=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<table>
<tr>
<?php echo $include2['time']; ?>
</tr>
</table>

View File

@@ -0,0 +1,19 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT TIMEDIFF ((SELECT date FROM plc GROUP BY totsouth ORDER BY id DESC LIMIT 1),(SELECT date FROM plc GROUP BY totsouth ORDER BY id DESC LIMIT 1, 1)) AS time";
$result=mysqli_query($con,$query);
$include4=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<table>
<tr>
<?php echo $include4['time']; ?>
</tr>
</table>

View File

@@ -0,0 +1,19 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT TIMEDIFF ((SELECT date FROM plc GROUP BY totwest2 ORDER BY id DESC LIMIT 1),(SELECT date FROM plc GROUP BY totwest2 ORDER BY id DESC LIMIT 1, 1)) AS time";
$result=mysqli_query($con,$query);
$include2=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<table>
<tr>
<?php echo $include2['time']; ?>
</tr>
</table>

View File

@@ -0,0 +1,15 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT ((SELECT easttotground FROM easttotalground ORDER BY id DESC LIMIT 1) - (SELECT easttotground FROM easttotalground ORDER BY id DESC LIMIT 899, 1))*4 AS eastavg";
$result=mysqli_query($con,$query);
$include4=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<?php echo round($include4['eastavg']); ?>

View File

@@ -0,0 +1,22 @@
<?php
include("../items.php");
//East AVG time query
$con=mysqli_connect('192.168.0.9', 'corey', '41945549', 'controls');
$query="SELECT DATE FROM plc GROUP BY totnorth DESC LIMIT 10";
$result=mysqli_query($con, $query);
$easttime = [];
while ($row=mysqli_fetch_array($result, MYSQLI_ASSOC)) {
array_push($easttime, date(strtotime($row['DATE'])));
}
$eastavg=date('i:s', ($easttime[0]-$easttime[9])/10);
mysqli_close($con);
echo $eastavg;
?>

View File

@@ -0,0 +1,14 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT DISTINCT EastTotal FROM mill_ytd_totals ORDER BY ID DESC LIMIT 1";
$result=mysqli_query($con,$query);
$include1=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<?php echo round($include1['EastTotal']); ?>

View File

@@ -0,0 +1,670 @@
<?php // phpcs:ignoreFile
require "../includes/items.php";
?>
<div class="dashboard-section" data-section-id="broadbent-dryers">
<button type="button" class="dashboard-section__grip" aria-label="Reorder Broadbent and Dryers section" title="Drag to rearrange">
<span aria-hidden="true">⋮⋮</span>
</button>
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="1" width="25%" id="vtitle" id="padded">Broadbent Tank :</a></td>
<td colspan="1" width="25%"><progress id="progresstanks" data-label="<?php echo $value['BBTankLvl']; ?>%" max="100" value="<?php echo $value['BBTankLvl']; ?>"></progress></td>
<td colspan="1" width="25%" id="vtitle" id="padded">A CVP Massecuite Tank :</a></td>
<td colspan="1" width="25%" width="25%"><progress id="progresstanks" data-label="<?php echo $value['ACVPMassecuiteLVL']; ?>%" max="100" value="<?php echo $value['ACVPMassecuiteLVL']; ?>"></progress></td>
</tr>
<tr>
<td colspan="4" id="title">Dryers Run/Stop</td>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr width="20%" id="vtitle">
<?php
//A1
if ($value['A1Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A1</td>";
} else if ($value['A1Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A1</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A2
if ($value['A2Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A2</td>";
} else if ($value['A2Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A2</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A3
if ($value['A3Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A3</td>";
} else if ($value['A3Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A3</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A4
if ($value['A4Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A4</td>";
} else if ($value['A4Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A4</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A5
if ($value['A5Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A5</td>";
} else if ($value['A5Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A5</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
?>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr width="20%" id="vtitle">
<?php
//A6
if ($value['A6Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A6</td>";
} else if ($value['A6Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A6</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A7
if ($value['A7Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A7</td>";
} else if ($value['A7Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A7</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A8
if ($value['OnOff'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">BB</td>";
} else if ($value['OnOff'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">BB</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A9
if ($value['A9Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A9</td>";
} else if ($value['A9Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A9</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A10
if ($value['A10Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A10</td>";
} else if ($value['A10Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A10</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
?>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr width="20%" id="vtitle">
<?php
//A11
if ($value['A11Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A11</td>";
} else if ($value['A11Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A11</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A12
if ($value['A12Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A12</td>";
} else if ($value['A12Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A12</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A13
if ($value['A13Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A13</td>";
} else if ($value['A13Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A13</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A14
if ($value['A14Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A14</td>";
} else if ($value['A14Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A14</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A15
echo "<td width=\"6.66%\" id=\"dryersonoffblank\">A15</td>";
/* if ($value['A15Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A15</td>";
}
else if ($value['A15Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A15</td>";
}
else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}*/
?>
</tr>
</table>
</div>
<div class="dashboard-section" data-section-id="pre-evaporators">
<button type="button" class="dashboard-section__grip" aria-label="Reorder Pre Evaporators section" title="Drag to rearrange">
<span aria-hidden="true">⋮⋮</span>
</button>
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="4" id="title">Pre Evaporators</td>
</tr>
</table>
<table class="col-6" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="4" id="title">Pre 1 South</td>
</tr>
<tr>
<td id="vtitle" width="50%">Level</td>
<td><progress id="progresstanks" data-label="<?php echo $value['Pre1SouthLVL']; ?>%" max="100" value="<?php echo $value['Pre1SouthLVL']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle">Level SP</td>
<td id="sum-count"><?php echo $value['Pre1SouthSP']; ?>%</td>
</tr>
</table>
<table class="col-6" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="4" id="title">Pre 2 North</td>
</tr>
<tr>
<td id="vtitle" width="50%">Level</td>
<td><progress id="progresstanks" data-label="<?php echo $value['Pre2NorthLVL']; ?>%" max="100" value="<?php echo $value['Pre2NorthLVL']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle">Level SP</td>
<td id="sum-count"><?php echo $value['Pre2NorthSP']; ?>%</td>
</tr>
</table>
<table class="col-6" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="4" id="title">Pre 3 35K</td>
</tr>
<tr>
<td id="vtitle" width="50%">Level</td>
<td><progress id="progresstanks" data-label="<?php echo $value['Pre335kLVL']; ?>%" max="100" value="<?php echo $value['Pre335kLVL']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle">Level SP</td>
<td id="sum-count"><?php echo $value['Pre335kSP']; ?>%</td>
</tr>
</table>
<table class="col-6" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="4" id="title">Pre 4 45K</td>
</tr>
<tr>
<td id="vtitle" width="50%">Level</td>
<td><progress id="progresstanks" data-label="<?php echo $value['Pre445kLVL']; ?>%" max="100" value="<?php echo $value['Pre445kLVL']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle">Level SP</td>
<td id="sum-count"><?php echo $value['Pre445kSP']; ?>%</td>
</tr>
</table>
</div>
<div class="dashboard-section" data-section-id="evaporators">
<button type="button" class="dashboard-section__grip" aria-label="Reorder Evaporators section" title="Drag to rearrange">
<span aria-hidden="true">⋮⋮</span>
</button>
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="4" id="title">Evaporators</td>
</tr>
</table>
<table class="col-6" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="4" id="title">West Set - A Set</td>
</tr>
<tr>
<td width="25%"></td>
<td width="25%" id="vtitle">1st</td>
<td width="25%" id="vtitle">2nd</td>
<td width="25%" id="vtitle">3rd</td>
</tr>
<tr>
<td id="vtitle">Level</td>
<td><progress id="progresstanks" data-label="<?php echo $value['WestA1Lvl']; ?>%" max="100" value="<?php echo $value['WestA1Lvl']; ?>"></progress></td>
<td><progress id="progresstanks" data-label="<?php echo $value['WestA2Lvl']; ?>%" max="100" value="<?php echo $value['WestA2Lvl']; ?>"></progress></td>
<td><progress id="progresstanks" data-label="<?php echo $value['WestA3Lvl']; ?>%" max="100" value="<?php echo $value['WestA3Lvl']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle">Level SP</td>
<td id="sum-count"><?php echo $value['WestA1LvlSP']; ?>%</td>
<td id="sum-count"><?php echo $value['WestA2LvlSP']; ?>%</td>
<td id="sum-count"><?php echo $value['WestA3LvlSP']; ?>%</td>
</tr>
<tr>
<td id="vtitle">Feed Valve </td>
<td id="sum-count"><?php echo $value['WestA1FV']; ?>%</td>
<td id="sum-count"><?php echo $value['WestA2FV']; ?>%</td>
<td id="sum-count"><?php echo $value['WsetA3FV']; ?>%</td>
</tr>
<tr>
<td colspan="2" id="vtitle">Vacuum SP</td>
<td colspan="2" id="sum-count"><?php echo $value['WestAVacuumSP']; ?></td>
</tr>
<tr>
<td colspan="2" id="vtitle">Vacuum</td>
<td colspan="2" id="sum-count"><?php echo $rounded['WestAVacuum']; ?></td>
</tr>
<tr>
<td colspan="2" id="vtitle">Brix SP</td>
<td colspan="2" id="sum-count"><?php echo $value['WestABrixSP']; ?></td>
</tr>
<tr>
<td colspan="2" id="vtitle">Brix</td>
<td colspan="2" id="sum-count"><?php echo $rounded['WestABrix']; ?></td>
</tr>
</table>
<table class="col-6" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="4" id="title">East Set - B Set</td>
</tr>
<tr>
<td width="25%"></td>
<td width="25%" id="vtitle">1st</td>
<td width="25%" id="vtitle">2nd</td>
<td width="25%" id="vtitle">3rd</td>
</tr>
<tr>
<td id="vtitle">Level</td>
<td><progress id="progresstanks" data-label="<?php echo $value['EastB1Lvl']; ?>%" max="100" value="<?php echo $value['EastB1Lvl']; ?>"></progress></td>
<td><progress id="progresstanks" data-label="<?php echo $value['EastB2Lvl']; ?>%" max="100" value="<?php echo $value['EastB2Lvl']; ?>"></progress></td>
<td><progress id="progresstanks" data-label="<?php echo $value['EastB3Lvl']; ?>%" max="100" value="<?php echo $value['EastB3Lvl']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle">Level SP</td>
<td id="sum-count"><?php echo $value['EastB1LvlSP']; ?>%</td>
<td id="sum-count"><?php echo $value['EastB2LvlSP']; ?>%</td>
<td id="sum-count"><?php echo $value['EastB3LvlSP']; ?>%</td>
</tr>
<tr>
<td id="vtitle">Feed Valve </td>
<td id="sum-count"><?php echo $value['EastB1FV']; ?>%</td>
<td id="sum-count"><?php echo $value['EastB2FV']; ?>%</td>
<td id="sum-count"><?php echo $value['EastB3FV']; ?>%</td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">Vacuum SP</td>
<td colspan="2" id="sum-count"><?php echo $value['EastBVacuumSP']; ?></td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">Vacuum</td>
<td colspan="2" id="sum-count"><?php echo $rounded['EastBVacuum']; ?></td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">Brix SP</td>
<td colspan="2" id="sum-count"><?php echo $value['EastBBrixSP']; ?></td>
</tr>
<tr>
<td colspan="2" id="vtitle">Brix</td>
<td colspan="2" id="sum-count"><?php echo $rounded['EastBBrix']; ?></td>
</tr>
</table>
<table class="col-6" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="4" id="title">Big Set - C Set</td>
</tr>
<tr>
<td width="25%"></td>
<td width="25%" id="vtitle">1st</td>
<td width="25%" id="vtitle">2nd</td>
<td width="25%" id="vtitle">3rd</td>
</tr>
<tr>
<td id="vtitle">Level</td>
<td><progress id="progresstanks" data-label="<?php echo $value['BigC1Lvl']; ?>%" max="100" value="<?php echo $value['BigC1Lvl']; ?>"></progress></td>
<td><progress id="progresstanks" data-label="<?php echo $value['BigC2Lvl']; ?>%" max="100" value="<?php echo $value['BigC2Lvl']; ?>"></progress></td>
<td><progress id="progresstanks" data-label="<?php echo $value['BigC3Lvl']; ?>%" max="100" value="<?php echo $value['BigC3Lvl']; ?>"></progress></td>
</tr>
<td id="vtitle">Level SP</td>
<td id="sum-count"><?php echo $value['BigC1LvlSP']; ?>%</td>
<td id="sum-count"><?php echo $value['BigC2LvlSP']; ?>%</td>
<td id="sum-count"><?php echo $value['BigC3LvlSP']; ?>%</td>
</tr>
<tr>
<td id="vtitle">Feed Valve </td>
<td id="sum-count"><?php echo $value['BigC1FV']; ?>%</td>
<td id="sum-count"><?php echo $value['BigC2FV']; ?>%</td>
<td id="sum-count"><?php echo $value['BigC3FV']; ?>%</td>
</tr>
<tr>
<td colspan="2" id="vtitle">Vacuum SP</td>
<td colspan="2" id="sum-count"><?php echo $value['BigCVacuumSP']; ?></td>
</tr>
<tr>
<td colspan="2" id="vtitle">Vacuum</td>
<td colspan="2" id="sum-count"><?php echo $rounded['BigCVacuum']; ?></td>
</tr>
<tr>
<td colspan="2" id="vtitle">Brix SP</td>
<td colspan="2" id="sum-count"><?php echo $value['BigCBrixSP']; ?></td>
</tr>
<tr>
<td colspan="2" id="vtitle">Brix</td>
<td colspan="2" id="sum-count"><?php echo $rounded['BigCBrix']; ?></td>
</tr>
</table>
</div>
<div class="dashboard-section" data-section-id="forty-five-k">
<button type="button" class="dashboard-section__grip" aria-label="Reorder 45K section" title="Drag to rearrange">
<span aria-hidden="true">⋮⋮</span>
</button>
<table class="col-6" border="1" cellspacing="0" cellpadding="2">
<tr>
<td colspan="3" id="title">45K</td>
</tr>
<tr>
<td id="vtitle" id="padded">Level:</a></td>
<td colspan="2" width="40%"><progress id="progresstanks" data-label="<?php echo $value['45kLVL']; ?>%" max="100" value="<?php echo $value['45kLVL']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle" id="padded">Level SP:</a></td>
<td id="sum-count"><?php echo $value['45kLVLSP']; ?></td>
<td id="vtitle">%</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">A2 SP:</a></td>
<td id="sum-count"><?php echo $value['45kA2SP']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">A2 Remote SP:</a></td>
<td id="sum-count"><?php echo $value['45kA2RSP']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">A2 Output:</a></td>
<td id="sum-count"><?php echo $value['45kA2Output']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">B2 SP:</a></td>
<td id="sum-count"><?php echo $value['45kB2SP']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">B2 Remote SP:</a></td>
<td id="sum-count"><?php echo $value['45kB2RSP']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">B2 Output:</a></td>
<td id="sum-count"><?php echo $value['45kB2Output']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">C2 SP:</a></td>
<td id="sum-count"><?php echo $value['45kC2SP']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">C2 Remote SP:</a></td>
<td id="sum-count"><?php echo $value['45kC2RSP']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">C2 Output:</a></td>
<td id="sum-count"><?php echo $value['45kC2Output']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Calendria PSI:</a></td>
<td id="sum-count"><?php echo $value['45kCalendriaPSI']; ?></td>
<td id="vtitle">PSI</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Calendria Temp:</a></td>
<td id="sum-count"><?php echo $value['45kCalendriaTemp']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Calendria Relief SP:</a></td>
<td id="sum-count"><?php echo $value['45kCalendriaReliefSP']; ?></td>
<td id="vtitle">PSI</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Juice Temp:</a></td>
<td id="sum-count"><?php echo $value['45kJuiceTemp']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Brix:</a></td>
<td id="sum-count"><?php echo $value['45kBrix']; ?></td>
<td id="vtitle"></a></td>
</tr>
</table>
</div>
<div class="dashboard-section" data-section-id="shell-heater-tubes">
<button type="button" class="dashboard-section__grip" aria-label="Reorder Shell and Heater Tubes section" title="Drag to rearrange">
<span aria-hidden="true">⋮⋮</span>
</button>
<table class="col-6" border="1" cellspacing="0" cellpadding="2">
<tr>
<td colspan="5" id="title">Shell & Heater Tubes</td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1" width="30%"></a></td>
<td id="vtitle" id="padded">Temp:</a></td>
<td id="vtitle" id="padded">Setpoint:</a></td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1" width="40%">Heater 1:</a></td>
<td id="sum-count"><?php echo $rounded['TubeHeater1Temp']; ?></td>
<td id="vtitle"><?php echo $value['TubeHeater1SP']; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1">Heater 2:</a></td>
<td id="sum-count"><?php echo $rounded['TubeHeater2Temp']; ?></td>
<td id="vtitle"><?php echo $value['TubeHeater2SP']; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1">Heater 3:</a></td>
<td id="sum-count"><?php echo $rounded['TubeHeater3Temp']; ?></td>
<td id="vtitle"><?php echo $value['TubeHeater3SP']; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1">Heater 4:</a></td>
<td id="sum-count"><?php echo $rounded['TubeHeater4Temp']; ?></td>
<td id="vtitle"><?php echo $value['TubeHeater4SP']; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1">Heater 5:</a></td>
<td id="sum-count"><?php echo $rounded['TubeHeater5Temp']; ?></td>
<td id="vtitle"><?php echo $value['TubeHeater5SP']; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1">Heater 6:</a></td>
<td id="sum-count"><?php echo $rounded['TubeHeater6Temp']; ?></td>
<td id="vtitle"><?php echo $value['TubeHeater6SP']; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1">Heater 7:</a></td>
<td id="sum-count"><?php echo $rounded['TubeHeater7Temp']; ?></td>
<td id="vtitle"><?php echo $value['TubeHeater7SP']; ?></td>
</tr>
<tr>
<tr>
<td id="vtitle" id="padded">Heater 8:</a></td>
<td id="sum-count"><?php echo $rounded['TubeHeater8TempPV']; ?></td>
<td id="sum-count"><?php echo $value['TubeHeater8TempSP']; ?></td>
</tr>
</table>
</div>
<div class="dashboard-section" data-section-id="conductivity-meters">
<button type="button" class="dashboard-section__grip" aria-label="Reorder Conductivity Meters section" title="Drag to rearrange">
<span aria-hidden="true">⋮⋮</span>
</button>
<table class="col-6" border="1" cellspacing="0" cellpadding="2">
<tr>
<td colspan="3" id="title">Conductivity Meters</td>
</tr>
<tr>
<td id="vtitle" id="padded" width="50%">45K</a></td>
<td id="sum-count"><?php echo $value['Conduct45K']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">A01:</a></td>
<td id="sum-count"><?php echo $value['ConductA01']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">A02:</a></td>
<td id="sum-count"><?php echo $value['ConductA02']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">B01:</a></td>
<td id="sum-count"><?php echo $value['ConductB01']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">B02:</a></td>
<td id="sum-count"><?php echo $value['ConductB02']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">C01:</a></td>
<td id="sum-count"><?php echo $value['ConductC01']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">C02:</a></td>
<td id="sum-count"><?php echo $value['ConductC02']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Pre1:</a></td>
<td id="sum-count"><?php echo $value['ConductPre1']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Pre2:</a></td>
<td id="sum-count"><?php echo $value['ConductPre2']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Pre3:</a></td>
<td id="sum-count"><?php echo $value['ConductPre3']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<!--
<tr>
<td colspan="3" id="title">Broadbent</td>
</tr>
<tr>
<td id="vtitle" id="padded">Broadbent Run:</a></td>
<?php
if ($value['OnOff'] == 1) {
echo "<td colspan=2 id=\"dryerson\">RUNNING</td>";
}
if ($value['OnOff'] == 0) {
echo "<td colspan=2 id=\"dryersoff\">STOPPED</td>";
}
?>
</tr>
<tr>
<td id="vtitle" id="padded">Broadbent Tank Level:</a></td>
<td colspan="2"><progress id="progresstanks" data-label="<?php echo $value['BBTankLvl']; ?>%" max="100" value="<?php echo $value['BBTankLvl']; ?>"></progress></td>
</tr>
-->
</table>
</div>
<div class="dashboard-section" data-section-id="drum-filters">
<button type="button" class="dashboard-section__grip" aria-label="Reorder Drum Filters section" title="Drag to rearrange">
<span aria-hidden="true">⋮⋮</span>
</button>
<table class="col-6" border="1" cellspacing="0" cellpadding="2">
<tr>
<td colspan="3" id="title">Drum Filters</td>
</tr>
<tr>
<td id="vtitle" id="padded" width="50%">Drum Filter 1:</a></td>
<td id="sum-count"><?php //echo $value['DRUMFILTERONE'];
?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Filter 1 Prev Day:</a></td>
<td id="sum-count"><?php //echo $value['Drum1PrevDay'];
?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Filter 2:</a></td>
<td id="sum-count"><?php //echo $value['DRUMFILTERTWO'];
?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Filter 2 Prev Day:</a></td>
<td id="sum-count"><?php //echo $value['Drum2PrevDay'];
?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Filter 3:</a></td>
<td id="sum-count"><?php //echo $value['DRUMFILTERTHREE'];
?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Filter 3 Prev Day:</a></td>
<td id="sum-count"><?php //echo $value['Drum3PrevDay'];
?></td>
<td id="vtitle">RPM</a></td>
</tr>
</table>
</div>
<div class="dashboard-section" data-section-id="mud-belts">
<button type="button" class="dashboard-section__grip" aria-label="Reorder Mud Belts section" title="Drag to rearrange">
<span aria-hidden="true">⋮⋮</span>
</button>
<table class="col-6" border="1" cellspacing="0" cellpadding="2">
<tr>
<td colspan="3" id="title">Mud Belts</td>
</tr>
<tr>
<td id="vtitle" id="padded">Mud Belt 1 RPM:</a></td>
<td id="sum-count"><?php echo $ID['00086']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Mud Belt 1 Water:</a></td>
<td id="sum-count"><?php echo $value['WATERFLOW1']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Mud Belt 2 RPM:</a></td>
<td id="sum-count"><?php echo $ID['00088']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Mud Belt 2 Water:</a></td>
<td id="sum-count"><?php echo $value['WATERFLOW2']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
</table>
</div>

View File

@@ -0,0 +1,145 @@
<!doctype html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Gauge Test</title>
<script src="https://github.com/Mikhus/canvas-gauges/blob/master/gauge.min.js"></script>
<style>body {
padding: 20px;
margin: 0;
background: #fff
}</style>
</head>
<?php
$username="corey";
$password="41945549";
$database="controls";
mysql_connect('127.0.0.1',$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$query = "SELECT * FROM milling ORDER BY id DESC LIMIT 1";
$result=mysql_query($query);
$num=mysql_numrows($result);
mysql_close();
?>
<?php
$i=0;
while ($i < $num) {
$f2=mysql_result($result,$i,"mainspd");
$f3=mysql_result($result,$i,"mill1spd");
$f4=mysql_result($result,$i,"tonshr");
$f5=mysql_result($result,$i,"mccoutput");
$f7=mysql_result($result,$i,"mill1wsp");
$f8=mysql_result($result,$i,"canetot");
$f9=mysql_result($result,$i,"15minavg");
$f10=mysql_result($result,$i,"knife1pres");
$f11=mysql_result($result,$i,"knife2pres");
$f12=mysql_result($result,$i,"knife3pres");
$f13=mysql_result($result,$i,"mill1lvl");
$f14=mysql_result($result,$i,"mill2lvl");
$f15=mysql_result($result,$i,"mill3lvl");
$f16=mysql_result($result,$i,"mill4lvl");
$f17=mysql_result($result,$i,"mill5lvl");
$f18=mysql_result($result,$i,"mill6lvl");
$f19=mysql_result($result,$i,"mill1pres");
$f20=mysql_result($result,$i,"mill2pres");
$f21=mysql_result($result,$i,"mill3pres");
$f22=mysql_result($result,$i,"mill4pres");
$f23=mysql_result($result,$i,"mill5pres");
$f24=mysql_result($result,$i,"mill6pres");
?>
<canvas id="gauge-ps"></canvas>
<script>
var gaugePS = new RadialGauge({
renderTo: 'gauge-ps',
width: 400,
height: 400,
units: 'PS',
minValue: 0,
maxValue: 1000,
majorTicks: [
'0',
'100',
'200',
'300',
'400',
'500',
'600',
'700',
'800',
'900',
'1000'
],
minorTicks: 2,
ticksAngle: 270,
startAngle: 45,
strokeTicks: true,
highlights : [
{ from : 457, to : 880, color : 'rgba(78, 78, 76, 0.5)' },
{ from : 880, to : 1000, color : 'rgba(225, 7, 23, 0.75)' }
],
valueInt: 1,
valueDec: 0,
colorPlate: "#fff",
colorMajorTicks: "#686868",
colorMinorTicks: "#686868",
colorTitle: "#000",
colorUnits: "#000",
colorNumbers: "#686868",
valueBox: true,
colorValueText: "#000",
colorValueBoxRect: "#fff",
colorValueBoxRectEnd: "#fff",
colorValueBoxBackground: "#fff",
colorValueBoxShadow: false,
colorValueTextShadow: false,
colorNeedleShadowUp: true,
colorNeedleShadowDown: false,
colorNeedle: "rgba(200, 50, 50, .75)",
colorNeedleEnd: "rgba(200, 50, 50, .75)",
colorNeedleCircleOuter: "rgba(200, 200, 200, 1)",
colorNeedleCircleOuterEnd: "rgba(200, 200, 200, 1)",
borderShadowWidth: 0,
borders: true,
borderInnerWidth: 0,
borderMiddleWidth: 0,
borderOuterWidth: 5,
colorBorderOuter: "#fafafa",
colorBorderOuterEnd: "#cdcdcd",
needleType: "arrow",
needleWidth: 2,
needleCircleSize: 7,
needleCircleOuter: true,
needleCircleInner: false,
animationDuration: 1500,
animationRule: "dequint",
fontNumbers: "Verdana",
fontTitle: "Verdana",
fontUnits: "Verdana",
fontValue: "Led",
fontValueStyle: 'italic',
fontNumbersSize: 20,
fontNumbersStyle: 'italic',
fontNumbersWeight: 'bold',
fontTitleSize: 24,
fontUnitsSize: 22,
fontValueSize: 50,
animatedValue: true
});
gaugePS.draw();
gaugePS.value = "$f13";
</script>
<?php
$i++;
}
?>

View File

@@ -0,0 +1,100 @@
<html>
<head>
<title>Highlighting, Dragging Points, Cursor and Trend Lines.</title>
<link class="include" rel="stylesheet" type="text/css" href="../jquery.jqplot.min.css" />
<link rel="stylesheet" type="text/css" href="examples.min.css" />
<link type="text/css" rel="stylesheet" href="syntaxhighlighter/styles/shCoreDefault.min.css" />
<link type="text/css" rel="stylesheet" href="syntaxhighlighter/styles/shThemejqPlot.min.css" />
<!--[if lt IE 9]><script language="javascript" type="text/javascript" src="../excanvas.js"></script><![endif]-->
<script class="include" type="text/javascript" src="../jquery.min.js"></script>
</head>
<body>
<div class="logo">
<div class="nav">
<a class="nav" href="../../../index.php"><span>&gt;</span>Home</a>
<a class="nav" href="../../../docs/"><span>&gt;</span>Docs</a>
<a class="nav" href="../../download/"><span>&gt;</span>Download</a>
<a class="nav" href="../../../info.php"><span>&gt;</span>Info</a>
<a class="nav" href="../../../donate.php"><span>&gt;</span>Donate</a>
</div>
</div>
<div class="example-content">
<div class="example-nav">
<a href="cursor-highlighter.html">Previous</a> <a href="./">Examples</a> <a href="dashboardWidget.html">Next</a></div>
<div class="example-plot" id="chart1"></div>
<!-- Example scripts go here -->
<script class="code" type="text/javascript">
$(document).ready(function () {
$.jqplot.config.enablePlugins = true;
s1 = [['23-May-08',1],['24-May-08',4],['25-May-08',2],['26-May-08', 6]];
plot1 = $.jqplot('chart1',[s1],{
title: 'Highlighting, Dragging, Cursor and Trend Line',
axes: {
xaxis: {
renderer: $.jqplot.DateAxisRenderer,
tickOptions: {
formatString: '%#m/%#d/%y'
},
numberTicks: 4
},
yaxis: {
tickOptions: {
formatString: '$%.2f'
}
}
},
highlighter: {
sizeAdjust: 10,
tooltipLocation: 'n',
tooltipAxes: 'y',
tooltipFormatString: '<b><i><span style="color:red;">hello</span></i></b> %.2f',
useAxesFormatters: false
},
cursor: {
show: true
}
});
});
</script>
<!-- End example scripts -->
<!-- Don't touch this! -->
<script class="include" type="text/javascript" src="../jquery.jqplot.min.js"></script>
<script type="text/javascript" src="syntaxhighlighter/scripts/shCore.min.js"></script>
<script type="text/javascript" src="syntaxhighlighter/scripts/shBrushJScript.min.js"></script>
<script type="text/javascript" src="syntaxhighlighter/scripts/shBrushXml.min.js"></script>
<!-- End Don't touch this! -->
<!-- Additional plugins go here -->
<script class="include" type="text/javascript" src="../plugins/jqplot.dateAxisRenderer.min.js"></script>
<script class="include" type="text/javascript" src="../plugins/jqplot.barRenderer.min.js"></script>
<script class="include" type="text/javascript" src="../plugins/jqplot.categoryAxisRenderer.min.js"></script>
<script class="include" type="text/javascript" src="../plugins/jqplot.cursor.min.js"></script>
<script class="include" type="text/javascript" src="../plugins/jqplot.highlighter.min.js"></script>
<script class="include" type="text/javascript" src="../plugins/jqplot.dragable.min.js"></script>
<script class="include" type="text/javascript" src="../plugins/jqplot.trendline.min.js"></script>
<!-- End additional plugins -->
</div>
<script type="text/javascript" src="example.min.js"></script>
</body>

View File

@@ -0,0 +1,116 @@
<?php
$username="corey";
$password="41945549";
$database="controls";
mysql_connect('192.168.0.13',$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$query = "SELECT * FROM manufacturing ORDER BY id DESC LIMIT 1";
$result=mysql_query($query);
$num=mysql_numrows($result);
mysql_close();
?>
<?php
$i=0;
while ($i < $num) {
$f0=mysql_result($result,$i,"date");
$f1=mysql_result($result,$i,"tonsground");
$f2=mysql_result($result,$i,"tonspurchased");
$f3=mysql_result($result,$i,"lbsmade");
$f4=mysql_result($result,$i,"lbs96perton");
$f5=mysql_result($result,$i,"trslbs96perton");
$f6=mysql_result($result,$i,"liquidation");
$f7=mysql_result($result,$i,"tonsgroundtot");
$f8=mysql_result($result,$i,"tonspurchasedtot");
$f9=mysql_result($result,$i,"lbsmadetot");
$f10=mysql_result($result,$i,"lbs96pertonavg");
$f11=mysql_result($result,$i,"trslbs96pertonavg");
$f12=mysql_result($result,$i,"liquidationavg");
?>
<div id="stories">
<table>
<tr>
<td id="vtitle" class="padded">Tons Ground:</td>
<td class="sum-count"><?php echo $english_format_number = number_format($f1, 3);?></td>
<td id="vtitle">Tons</td>
</tr>
<tr>
<td id="vtitle" class="padded">Tons Ground Total:</td>
<td class="sum-count"><?php echo $english_format_number = number_format($f7, 3); ?></td>
<td id="vtitle">Tons</td>
</tr>
<tr>
<td id="vtitle" class="padded">Tons Purchased:</td>
<td class="sum-count"><?php echo $english_format_number = number_format($f2, 3); ?></td>
<td id="vtitle">Tons</td>
</tr>
<tr>
<td id="vtitle" class="padded">Tons Purchased Total:</td>
<td class="sum-count"><?php echo $english_format_number = number_format($f8, 3); ?></td>
<td id="vtitle">Tons</td>
</tr>
<tr>
<td id="vtitle" class="padded">LBS Sugar Made:</td>
<td class="sum-count"><?php echo $english_format_number = number_format($f3, 3); ?></td>
<td id="vtitle">LBS</td>
</tr>
<tr>
<td id="vtitle" class="padded">LBS Sugar Made Total:</td>
<td class="sum-count"><?php echo $english_format_number = number_format($f9, 3); ?></td>
<td id="vtitle">LBS</td>
</tr>
<tr>
<td id="vtitle" class="padded">LBS Sugar 96/Ton:</td>
<td class="sum-count"><?php echo $f4; ?></td>
<td id="vtitle"></td>
</tr>
<tr>
<td id="vtitle" class="padded">LBS Sugar 96/Ton Avg:</td>
<td class="sum-count"><?php echo $f10; ?></td>
<td id="vtitle"></td>
</tr>
<tr>
<td id="vtitle" class="padded">TRS LBS 96/Ton:</td>
<td class="sum-count"><?php echo $f5; ?></td>
<td id="vtitle"></td>
</tr>
<tr>
<td id="vtitle" class="padded">TRS LBS 96/Ton Avg:</td>
<td class="sum-count"><?php echo $f11; ?></td>
<td id="vtitle"></td>
</tr>
<tr>
<td id="vtitle" class="padded">Liquidation:</td>
<td class="sum-count"><?php echo $f6; ?></td>
<td id="vtitle"></td>
</tr>
<tr>
<td id="vtitle" class="padded">Liquidation Avg:</td>
<td class="sum-count"><?php echo $f12; ?></td>
<td id="vtitle"></td>
</tr>
</table>
</div>
<div id="h-s">
<span>View:</span>
<a href="index.php" style="color: #325b29;">Overview</a>
<a href="manuf.php" style="color: #325b29;">Manuf</a>
<a href="milling.html" style="color: #325b29;">Milling</a>
<a href="boilers.html" style="color: #325b29;">Boilers</a>
<a href="table.html" style="color: #325b29;">Tables</a>
<a href="crystal.html" style="color: #325b29;">Crystalizers</a>
</div>
<?php
$i++;
}
?>

View File

@@ -0,0 +1,39 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT ROUND(
(((SELECT easttotground FROM easttotalground ORDER BY id DESC LIMIT 1) - (
SELECT easttotground FROM easttotalground ORDER BY id DESC LIMIT 899, 1))*(24
-
((SELECT TIME_TO_SEC(
TIMEDIFF(
CASE
WHEN CURRENT_TIME() < '5:00:00'
THEN ADDTIME(CURRENT_TIME(), '240000')
ELSE CURRENT_TIME() END,
'05:00:00'))/3600))))
+
(((SELECT westtotground FROM westtotalground ORDER BY id DESC LIMIT 1) - (
SELECT westtotground FROM westtotalground ORDER BY id DESC LIMIT 899, 1))*(24
-
((SELECT TIME_TO_SEC(
TIMEDIFF(
CASE
WHEN CURRENT_TIME() < '5:00:00'
THEN ADDTIME(CURRENT_TIME(), '240000')
ELSE CURRENT_TIME() END,
'05:00:00'))/3600)))))*4
+
(SELECT MillTotalGround FROM mill_total_ground ORDER BY id DESC LIMIT 1)
AS millprojected";
$result=mysqli_query($con,$query);
$include4=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<?php echo round($include4['millprojected']); ?>

View File

@@ -0,0 +1,39 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT ROUND(
(((SELECT easttotground FROM easttotalground ORDER BY id DESC LIMIT 1) - (
SELECT easttotground FROM easttotalground ORDER BY id DESC LIMIT 1799, 1))*(24
-
((SELECT TIME_TO_SEC(
TIMEDIFF(
CASE
WHEN CURRENT_TIME() < '5:00:00'
THEN ADDTIME(CURRENT_TIME(), '240000')
ELSE CURRENT_TIME() END,
'05:00:00'))/3600))))
+
(((SELECT westtotground FROM westtotalground ORDER BY id DESC LIMIT 1) - (
SELECT westtotground FROM westtotalground ORDER BY id DESC LIMIT 1799, 1))*(24
-
((SELECT TIME_TO_SEC(
TIMEDIFF(
CASE
WHEN CURRENT_TIME() < '5:00:00'
THEN ADDTIME(CURRENT_TIME(), '240000')
ELSE CURRENT_TIME() END,
'05:00:00'))/3600)))))*2
+
(SELECT MillTotalGround FROM mill_total_ground ORDER BY id DESC LIMIT 1)
AS millprojected";
$result=mysqli_query($con,$query);
$include4=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<?php echo round($include4['millprojected']); ?>

View File

@@ -0,0 +1,39 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT ROUND(
(((SELECT easttotground FROM easttotalground ORDER BY id DESC LIMIT 1) - (
SELECT easttotground FROM easttotalground ORDER BY id DESC LIMIT 299, 1))*(24
-
((SELECT TIME_TO_SEC(
TIMEDIFF(
CASE
WHEN CURRENT_TIME() < '5:00:00'
THEN ADDTIME(CURRENT_TIME(), '240000')
ELSE CURRENT_TIME() END,
'05:00:00'))/3600))))
+
(((SELECT westtotground FROM westtotalground ORDER BY id DESC LIMIT 1) - (
SELECT westtotground FROM westtotalground ORDER BY id DESC LIMIT 299, 1))*(24
-
((SELECT TIME_TO_SEC(
TIMEDIFF(
CASE
WHEN CURRENT_TIME() < '5:00:00'
THEN ADDTIME(CURRENT_TIME(), '240000')
ELSE CURRENT_TIME() END,
'05:00:00'))/3600)))))*12
+
(SELECT MillTotalGround FROM mill_total_ground ORDER BY id DESC LIMIT 1)
AS millprojected";
$result=mysqli_query($con,$query);
$include4=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<?php echo round($include4['millprojected']); ?>

View File

@@ -0,0 +1,39 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT ROUND(
(((SELECT easttotground FROM easttotalground ORDER BY id DESC LIMIT 1) - (
SELECT easttotground FROM easttotalground ORDER BY id DESC LIMIT 3599, 1))*(24
-
((SELECT TIME_TO_SEC(
TIMEDIFF(
CASE
WHEN CURRENT_TIME() < '5:00:00'
THEN ADDTIME(CURRENT_TIME(), '240000')
ELSE CURRENT_TIME() END,
'05:00:00'))/3600))))
+
(((SELECT westtotground FROM westtotalground ORDER BY id DESC LIMIT 1) - (
SELECT westtotground FROM westtotalground ORDER BY id DESC LIMIT 3599, 1))*(24
-
((SELECT TIME_TO_SEC(
TIMEDIFF(
CASE
WHEN CURRENT_TIME() < '5:00:00'
THEN ADDTIME(CURRENT_TIME(), '240000')
ELSE CURRENT_TIME() END,
'05:00:00'))/3600)))))*1
+
(SELECT MillTotalGround FROM mill_total_ground ORDER BY id DESC LIMIT 1)
AS millprojected";
$result=mysqli_query($con,$query);
$include4=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<?php echo round($include4['millprojected']); ?>

View File

@@ -0,0 +1,14 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT DISTINCT MillTotal FROM mill_ytd_totals ORDER BY ID DESC LIMIT 1";
$result=mysqli_query($con,$query);
$include1=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<?php echo round($include1['MillTotal']); ?>

View File

@@ -0,0 +1,34 @@
<?php
error_reporting(E_ERROR);
$username="corey";
$password="41945549";
$database="controls";
mysql_connect('127.0.0.1',$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$query = "SELECT AVG(wtonshr) AS rate FROM (SELECT wtonshr FROM milling ORDER BY id DESC LIMIT 60) tbl";
$result=mysql_query($query);
$num=mysql_numrows($result);
mysql_close();
?>
<?php
$i=0;
while ($i < $num) {
$f1=mysql_result($result,$i,"rate");
?>
<table>
<tr>
<?php echo $f1; ?>
</tr>
</table>
<?php
$i++;
}
?>

View File

@@ -0,0 +1,268 @@
<?php
include("../items.php");
//West AVG time query
$con=mysqli_connect('192.168.0.9', 'corey', '41945549', 'controls');
$query="SELECT DATE FROM plc GROUP BY totsouth DESC LIMIT 10";
$result=mysqli_query($con, $query);
$westtime = [];
while ($row=mysqli_fetch_array($result, MYSQLI_ASSOC)) {
array_push($westtime, date(strtotime($row['DATE'])));
}
$westavg=date('i:s', ($westtime[0]-$westtime[9])/10);
//West2 AVG time query
$query="SELECT DATE FROM plc GROUP BY totwest2 DESC LIMIT 10";
$result=mysqli_query($con, $query);
$west2time = [];
while ($row=mysqli_fetch_array($result, MYSQLI_ASSOC)) {
array_push($west2time, date(strtotime($row['DATE'])));
}
$west2avg=date('i:s', ($west2time[0]-$west2time[9])/10);
//East AVG time query
$query="SELECT DATE FROM plc GROUP BY totnorth DESC LIMIT 10";
$result=mysqli_query($con, $query);
$easttime = [];
while ($row=mysqli_fetch_array($result, MYSQLI_ASSOC)) {
array_push($easttime, date(strtotime($row['DATE'])));
}
$eastavg=date('i:s', ($easttime[0]-$easttime[9])/10);
mysqli_close($con);
?>
<div>
<table width="100%" border="1" cellspacing="0" cellpadding="2">
<tr>
<td colspan="3" id="title">Scale Data</td>
</tr>
<tr>
<td id="vtitle">Cane In Today:</td>
<td id="sum-count"><?php include("tonsin.php");?></td>
<td id="vtitle">Tons</td>
</tr>
<tr>
<td id="vtitle" id="padded">Cane In Yesterday:</td>
<td id="sum-count"><?php include("tonsinprev.php");?></td>
<td id="vtitle">Tons</td>
</tr>
<tr>
<td id="vtitle" id="padded">YTD Cane Total Tons:</td>
<td id="sum-count"><?php include("tonsintot.php");?></td>
<td id="vtitle">Tons</td>
<tr>
<td colspan="3" id="title">Overview</td>
</tr>
<tr>
<td id="vtitle" id="padded">Live Steam Pressure:</td>
<td id="sum-count"><?php echo $value['PT_001']; ?></td>
<td id="vtitle">PSI</td>
</tr>
<tr>
<td id="vtitle" id="padded">Exhaust Pressure:</td>
<td id="sum-count"><?php echo $roundedid['00302']; ?></td>
<td id="vtitle">PSI</td>
</tr>
<tr>
<td id="vtitle" id="padded">Exhaust Pressure At Pan 9:</td>
<td id="sum-count"><?php echo $value['PAN9 EXST']; ?></td>
<td id="vtitle">PSI</td>
</tr>
<tr>
<td id="vtitle" id="padded">Vapor Pressure at Pan 8:</td>
<td id="sum-count"><?php echo $ID['00532']; ?></td>
<td id="vtitle">PSI</td>
</tr>
<td id="vtitle" id="padded">Pan 8 Level:</a></td>
<td id="sum-count"><?php echo $value['PAN8 LVL']; ?></td>
<td id="vtitle">%</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Vapor Header Pressure:</a></td>
<td id="sum-count"><?php echo $value['VAPOR HDR PRES']; ?></td>
<td id="vtitle">PSI</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">New Evap Vapor Valve:</a></td>
<td id="sum-count"><?php echo $value['35kVaporValve']; ?></td>
<td id="vtitle">%</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Final Molasses Temp:</a></td>
<td id="sum-count"><?php echo $value['FinalMolTemp']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Cold Water Inj Temp:</a></td>
<td id="sum-count"><?php echo $value['Cold Water Injection']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Hot Water Inj Temp:</a></td>
<td id="sum-count"><?php echo $value['Hot Water Injection']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">City Water Pressure:</a></td>
<td id="sum-count"><?php echo $value['CityWaterPressure']; ?></td>
<td id="vtitle">PSI</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">House Air Pressure:</a></td>
<td id="sum-count"><?php echo $value['HouseAirPressure']; ?></td>
<td id="vtitle">PSI</a></td>
</tr>
<tr>
<td colspan="3" id="title">Tank Levels</td>
</tr>
<tr>
<td id="vtitle" id="padded">Juice Tank 1 Level:</td>
<td colspan="2" ><progress id="progresstanks" data-label="<?php echo $value['Juice Tank1']; ?>%" max="100" value="<?php echo $value['Juice Tank1']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle" id="padded">Juice Tank 2 Level:</td>
<td colspan="2" align="left"><progress id="progresstanks" data-label="<?php echo $value['Juice Tank2']; ?>%" max="100" value="<?php echo $value['Juice Tank2']; ?>"></progress></td
</tr>
<tr>
<td id="vtitle" id="padded">Syrup RCVR Level:</a></td>
<td colspan="2"><progress id="progresstanks" data-label="<?php echo $value['Syrup RCVR']; ?>%" max="100" value="<?php echo $value['Syrup RCVR']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle" id="padded">Syrup Overflow Level:</a></td>
<td colspan="2"><progress id="progresstanks" data-label="<?php echo $value['Syrup Overflow Lvl']; ?>%" max="100" value="<?php echo $value['Syrup Overflow Lvl']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle" id="padded">Total Syrup Level:</a></td>
<td colspan="3"><progress id="progresstanks" data-label="<?php echo round(($value['Syrup Overflow Lvl']*.82569)+($value['Syrup RCVR']*.17431),0); ?>%" max="100" value="<?php echo round(($value['Syrup Overflow Lvl']*.82569)+($value['Syrup RCVR']*.17431),0); ?>"></meter></td>
</tr>
<tr>
<td id="vtitle" id="padded">A1 Molasses RCVR Level:</a></td>
<td colspan="2"><progress id="progresstanks" data-label="<?php echo $value['A1 RCVR']; ?>%" max="100" value="<?php echo $value['A1 RCVR']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle" id="padded">A1 Molasses Overflow Level:</a></td>
<td colspan="2"><progress id="progresstanks" data-label="<?php echo $value['A1 Molasses Overflow Lvl']; ?>%" max="100" value="<?php echo $value['A1 Molasses Overflow Lvl']; ?>"></progress</td>
</tr>
<tr>
<td id="vtitle" id="padded">A2 Molasses RCVR Level:</a></td>
<td colspan="2"><progress id="progresstanks" data-label="<?php echo $value['A2 RCVR']; ?>%" max="100" value="<?php echo $value['A2 RCVR']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle" id="padded">A2 Molasses Overflow Level:</a></td>
<td colspan="2"><progress id="progresstanks" data-label="<?php echo $value['A2 Molasses Overflow Lvl']; ?>%" max="100" value="<?php echo $value['A2 Molasses Overflow Lvl']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle" id="padded">B Molasses RCVR Level:</a></td>
<td colspan="2"><progress id="progresstanks" data-label="<?php echo $value['B RCVR']; ?>%" max="100" value="<?php echo $value['B RCVR']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle" id="padded">B Molasses Overflow Level:</a></td>
<td colspan="2"><progress id="progresstanks" data-label="<?php echo $value['B Molasses Overflow Lvl']; ?>%" max="100" value="<?php echo $value['B Molasses Overflow Lvl']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle" id="padded">Condensate Water Level:</a></td>
<td colspan="2"><progress id="progresstanks" data-label="<?php echo $value['CondensateWater']; ?>%" max="100" value="<?php echo $value['CondensateWater']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle" id="padded">Sweetwater Level:</a></td>
<td colspan="2"><progress id="progresstanks" data-label="<?php echo $value['SweetwaterTank']; ?>%" max="100" value="<?php echo $value['SweetwaterTank']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle" id="padded">Cold Water Inj Level:</a></td>
<td colspan="2"><progress id="progresstanks" data-label="<?php echo $value['Cold Water Injection LVL']; ?>%" max="100" value="<?php echo $value['Cold Water Injection LVL']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle" id="padded">Flash Tank Level:</a></td>
<td colspan="2"><progress id="progresstanks" data-label="<?php echo $value['FlashTankLVL']; ?>%" max="100" value="<?php echo $value['FlashTankLVL']; ?>"></progress></td>
</tr>
<tr>
<td colspan="3" id="title">East Truck Dump</td>
</tr>
<tr>
<td id="vtitle" id="padded">24hr Total Dumps:</a></td>
<td id="sum-count"colspan="2"><?php echo $value['24hrnorth']; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">YTD Total Dumps:</a></td>
<td id="sum-count" colspan="2"><?php echo $value['totnorth']; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">Time Since Last Dump:</a></td>
<td id="sum-count" colspan="2"><?php include("sincen.php");?></td>
</tr>
<tr>
<td id="vtitle" id="padded">Average Between Last 10 Dumps</a></td>
<td id="sum-count" colspan="2"><?php echo $eastavg; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">Time Between Dumps:</a></td>
<td id="sum-count" colspan="2"><?php include("dumptimen.php");?></td>
</tr>
<tr>
<td colspan="3" id="title"> West Truck Dump 1</td>
</tr>
<tr>
<td id="vtitle" id="padded">24hr Total Dumps:</a></td>
<td id="sum-count" colspan="2"><?php echo $value['24hrsouth']; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">YTD Total Dumps:</a></td>
<td id="sum-count" colspan="2"><?php echo $value['totsouth']; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">Time Since Last Dump:</a></td>
<td id="sum-count" colspan="2"><?php include("sinces.php");?></td>
</tr>
<tr>
<td id="vtitle" id="padded">Average Between Last 10 Dumps</a></td>
<td id="sum-count" colspan="2"><?php echo $westavg; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">Time Between Dumps:</a></td>
<td id="sum-count" colspan="2"><?php include("dumptimes.php");?></td>
</tr><tr>
<td colspan="3" id="title"> West Truck Dump 2</td>
</tr>
<tr>
<td id="vtitle" id="padded">24hr Total Dumps:</a></td>
<td id="sum-count" colspan="2"><?php echo $value['24hrwest2']; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">YTD Total Dumps:</a></td>
<td id="sum-count" colspan="2"><?php echo $value['totwest2']; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">Time Since Last Dump:</a></td>
<td id="sum-count" colspan="2"><?php include("sincew2.php");?></td>
</tr>
<tr>
<td id="vtitle" id="padded">Average Between Last 10 Dumps</a></td>
<td id="sum-count" colspan="2"><?php echo $west2avg; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">Time Between Dumps:</a></td>
<td id="sum-count" colspan="2"><?php include("dumptimew2.php");?></td>
</tr>
</table>
</div>

View File

@@ -0,0 +1,14 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT DISTINCT record FROM record ORDER BY record DESC LIMIT 1";
$result=mysqli_query($con,$query);
$include1=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<?php echo round($include1['record']); ?>

View File

@@ -0,0 +1,123 @@
<?php
$serverName = "LASUCA2K8\CBM";
$uid = "cbm";
$pwd = "ascbm2k";
$connectionInfo = array( "UID"=>$uid, "PWD"=>$pwd,'ReturnDatesAsStrings'=> true, "CharacterSet" => 'utf-8', "Database"=>"SugarCaneScale" );
/* Connect using SQL Server Authentication. */
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false )
{
echo "Unable to connect.</br>";
die( print_r( sqlsrv_errors(), true));
}
//select data from db
$sql = "SELECT LoadData.LoadId_Pk,
LoadData.CropDay,
LoadData.TractId_Fk,
LoadData.TareIN,
LoadData.GrossWt,
LoadData.Tons,
LoadData.FarmerId_Fk,
CONVERT(varchar, LoadData.DateOut, 100) [TIME],
LoadData.Parked,
Tract.AccountName
FROM LoadData RIGHT JOIN Tract ON LoadData.FarmerId_Fk = Tract.AccountId_Pk
WHERE CropDay = ( SELECT Max(CropDay)FROM LoadData)
GROUP BY LoadData.LoadId_Pk,
LoadData.CropDay,
LoadData.TractId_Fk,
LoadData.TareIN,
LoadData.GrossWt,
LoadData.Tons,
LoadData.FarmerId_Fk,
LoadData.DateOut,
LoadData.Parked,
Tract.AccountName
ORDER by LoadId_Pk DESC";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
?>
<table style="margin: 0px auto;">
<tr>
<th>
<form action="search.php">
<input id="option" type="checkbox" name="over" value="100000">
<label for="option"><span></span>OVERLOAD</label>
<input type="submit" value="Search" />
</form>
</th>
</tr>
</table>
<table width="100%" style="margin: 0px auto;" class="stat" cellpadding="4">
<tr id="title">
<th>Live Scale Load Data</th>
</tr>
</table>
<table width="100%" border="2" cellspacing="0" cellpadding="4">
<thead>
<tr>
<th>Load</th>
<th>Day</th>
<th>Tract</th>
<th>Grower</th>
<th>Gross</th>
<th>Tare</th>
<th>Tons</th>
<th>Out Time</th>
</tr>
</thead>
<?php
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) {
echo "<tr>";
echo "<td>".$row ['LoadId_Pk']."</td>";
echo "<td><b>".$row ['CropDay']."</b></td>";
echo "<td>".$row ['TractId_Fk']."</td>";
echo "<td>".$row ['AccountName']."</td>";
echo "<td>".$row ['GrossWt']." </td>";
echo "<td>".$row ['TareIN']." </td>";
echo "<td>".$row ['Tons']." </td>";
echo "<td>".$row ['TIME']." </td>";
echo "</tr>";
}
//end
sqlsrv_free_stmt( $stmt);
sqlsrv_close( $conn);
?>
</table>
<a href="#" class="back-to-top">Back to Top</a>
</div>
<script type="text/javascript">
// create the back to top button
$('body').prepend('<a href="#" class="back-to-top">Back to Top</a>');
var amountScrolled = 300;
$(window).scroll(function() {
if ($(window).scrollTop() > amountScrolled) {
$('a.back-to-top').fadeIn('slow');
} else {
$('a.back-to-top').fadeOut('slow');
}
});
$('a.back-to-top, a.simple-back-to-top').click(function() {
$('body').animate({
scrollTop: 0
}, 'fast');
return false;
});
</script>

View File

@@ -0,0 +1,18 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT TIMEDIFF ((SELECT NOW()),(SELECT date FROM plc GROUP BY totnorth ORDER BY id DESC LIMIT 1)) AS time";
$result=mysqli_query($con,$query);
$include1=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<table>
<tr>
<?php echo $include1['time']; ?>
</tr>
</table>

View File

@@ -0,0 +1,18 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT TIMEDIFF ((SELECT NOW()),(SELECT date FROM plc GROUP BY totsouth ORDER BY id DESC LIMIT 1)) AS time";
$result=mysqli_query($con,$query);
$include3=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<table>
<tr>
<?php echo $include3['time']; ?>
</tr>
</table>

View File

@@ -0,0 +1,18 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT TIMEDIFF ((SELECT NOW()),(SELECT date FROM plc GROUP BY totwest2 ORDER BY id DESC LIMIT 1)) AS time";
$result=mysqli_query($con,$query);
$include1=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<table>
<tr>
<?php echo $include1['time']; ?>
</tr>
</table>

View File

@@ -0,0 +1,18 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT(((SELECT easttotground FROM easttotalground ORDER BY id DESC LIMIT 1) - (SELECT easttotground FROM easttotalground ORDER BY id DESC LIMIT 29, 1))*120
+
((SELECT westtotground FROM westtotalground ORDER BY id DESC LIMIT 1) - (SELECT westtotground FROM westtotalground ORDER BY id DESC LIMIT 29, 1))*120)
AS stablerate";
$result=mysqli_query($con,$query);
$include4=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<?php echo round($include4['stablerate']); ?>

View File

@@ -0,0 +1,18 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT(((SELECT easttotground FROM easttotalground ORDER BY id DESC LIMIT 1) - (SELECT easttotground FROM easttotalground ORDER BY id DESC LIMIT 29, 1))*120
+
((SELECT westtotground FROM westtotalground ORDER BY id DESC LIMIT 1) - (SELECT westtotground FROM westtotalground ORDER BY id DESC LIMIT 29, 1))*120)
AS stablerate";
$result=mysqli_query($con,$query);
$include4=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<?php echo round($include4['stablerate']); ?>

View File

@@ -0,0 +1,18 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT(((SELECT easttotground FROM easttotalground ORDER BY id DESC LIMIT 1) - (SELECT easttotground FROM easttotalground ORDER BY id DESC LIMIT 59, 1))*60
+
((SELECT westtotground FROM westtotalground ORDER BY id DESC LIMIT 1) - (SELECT westtotground FROM westtotalground ORDER BY id DESC LIMIT 59, 1))*60)
AS stablerate";
$result=mysqli_query($con,$query);
$include4=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<?php echo round($include4['stablerate']); ?>

View File

@@ -0,0 +1,57 @@
<?php
$serverName = "CBM2K12\SQLEXPRESS";
$uid = "cbmclient";
$pwd = "ascbm2k";
$connectionInfo = array( "UID"=>$uid, "PWD"=>$pwd,'ReturnDatesAsStrings'=> true, "CharacterSet" => 'utf-8', "Database"=>"SugarCaneScale" );
/* Connect using SQL Server Authentication. */
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false )
{
echo "Unable to connect.</br>";
die( print_r( sqlsrv_errors(), true));
}
$sql = "SELECT `Load Data`.`Load No`,
`Load Data`.`Crop Day`,
`Load Data`.`Tract No`,
`Load Data`.`Gross Wt`,
`Load Data`.`In Tare`,
`Load Data`.Tons,
`Load Data`.`In Time`,
`Load Data`.`Out Time`,
INSCALE.farmer,
INSCALE.REMTONs,
INSCALE.hauled
FROM `Load Data` RIGHT JOIN INSCALE ON `Load Data`.`Load No` = INSCALE.Load
ORDER BY `Crop Day`, `Load No` DESC";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
$columnHeader = 'TEST';
$columnHeader = "Time" . "\t" ."Date" . "\t" . "Boiler 1" . "\t" . "Boiler 2" . "\t" . "Boiler 3" . "\t". "Boiler 4" . "\t". "Boiler 5" . "\t". "Boiler 6" . "\t";
$setData = '';
while ($rec = mysqli_fetch_row($stmt)) {
$rowData = '';
foreach ($rec as $value) {
$value = '"' . $value . '"' . "\t";
$rowData .= $value;
}
$setData .= trim($rowData) . "\n";
}
header("Content-type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=Boiler Steam 24hr Average.xls");
header("Pragma: no-cache");
header("Expires: 0");
echo ucwords($columnHeader) . "\n" . $setData . "\n";
?>

View File

@@ -0,0 +1,80 @@
<?php
$serverName = "OPTIMUS\SQLEXPRESS";
$uid = "crw";
$pwd = "rp02751";
$connectionInfo = array( "UID"=>$uid, "PWD"=>$pwd,'ReturnDatesAsStrings'=> true, "CharacterSet" => 'utf-8', "Database"=>"Lasuca_MillData" );
/* Connect using SQL Server Authentication. */
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false )
{
echo "Unable to connect.</br>";
die( print_r( sqlsrv_errors(), true));
}
$sql = "SELECT * FROM MaterialInfo ORDER by TareDate DESC";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
$tonsin = 0;
?>
<!--
<table style="margin: 0px auto;">
<tr>
<th>
<form method="POST" action="">
<label for="option"></label>
<select name="option" id="option">
<option>CR Number</option>
<option>Tare date</option>
</select>
<input type="submit" value="Search" />
</form>
</th>
</tr>
</table>
-->
<table id="table" style="margin: 1px auto; border: 2px solid black; border-collapse: collapse; width=850px;" class="stat">
<thead>
<tr style="margin: 1px auto; border: 1px solid black; border-collapse: collapse; align: left;">
<th>CR number</th>
<th>Material</th>
<th>Gross</th>
<th>Tare</th>
<th>Gross Date</th>
<th>Tare Date</th>
<th>Hauler</th>
<th>Truck Number</th>
<th>Ship From</th>
<th>Ship To</th>
</tr>
</thead>
<?php
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) )
{
echo "<tr>";
echo "<td width=100><b>".$row ['ControlNumber']."</b></td>";
echo "<td width=100>".$row ['Material']."</td>";
echo "<td width=100>".$row ['GrossWeight']."</td>";
echo "<td width=100>".$row ['TareWeight']." </td>";
echo "<td width=175>".$row ['GrossDate']." </td>";
echo "<td width=175>".$row ['TareDate']." </td>";
echo "<td width=100>".$row ['Hauler']." </td>";
echo "<td width=100>".$row ['TruckNumber']." </td>";
echo "<td width=100>".$row ['ShipFrom']." </td>";
echo "<td width=100>".$row ['ShipTo']." </td>";
echo "</tr>";
}
//end
?>
</table>
<?php echo $tonsin; ?>
<?
$db = null;
?>

View File

@@ -0,0 +1,35 @@
<?php
$serverName = "OPTIMUS\SQLEXPRESS";
$uid = "crw";
$pwd = "rp02751";
$connectionInfo = array( "UID"=>$uid, "PWD"=>$pwd,'ReturnDatesAsStrings'=> true, "CharacterSet" => 'utf-8', "Database"=>"Lasuca_MillData" );
/* Connect using SQL Server Authentication. */
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false )
{
echo "Unable to connect.</br>";
die( print_r( sqlsrv_errors(), true));
}
$sql = "SELECT SUM(GrossWeight) - SUM(TareWeight) AS Tons FROM MaterialInfo WHERE TruckNumber LIKE '%Lasuca1%' OR TruckNumber LIKE '%Lasuca2%'";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
$tonsin = 0;
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) )
{
$tonsin += $row['Tons'];
}
//end
?>
<?php echo $tonsin; ?>
<?
$db = null;
?>

View File

@@ -0,0 +1,409 @@
<?php
$username="corey";
$password="41945549";
$database="controls";
mysql_connect('127.0.0.1',$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$query = "SELECT * FROM tables ORDER BY id DESC LIMIT 1";
$result=mysql_query($query);
$num=mysql_numrows($result);
mysql_close();
?>
<?php
$i=0;
while ($i < $num) {
$f2=mysql_result($result,$i,"neoutput");
$f3=mysql_result($result,$i,"nescale");
$f4=mysql_result($result,$i,"nesetpoint");
$f5=mysql_result($result,$i,"seoutput");
$f7=mysql_result($result,$i,"sescale");
$f8=mysql_result($result,$i,"sesetpoint");
$f9=mysql_result($result,$i,"woutput");
$f10=mysql_result($result,$i,"wscale");
$f11=mysql_result($result,$i,"wsetpoint");
$f12=mysql_result($result,$i,"tdoutput");
$f13=mysql_result($result,$i,"tdalarm");
$f14=mysql_result($result,$i,"nam");
$f15=mysql_result($result,$i,"sam");
$f16=mysql_result($result,$i,"wam");
$f18=mysql_result($result,$i,"tdratio");
$f19=mysql_result($result,$i,"tdsetpoint");
$f20=mysql_result($result,$i,"tdinput");
$f21=mysql_result($result,$i,"tdmg");
$f22=mysql_result($result,$i,"nesetpoint3");
$f23=mysql_result($result,$i,"nespswitch");
$f24=mysql_result($result,$i,"wsetpoint3");
$f25=mysql_result($result,$i,"wspswitch");
$f26=mysql_result($result,$i,"mcctons");
$f27=mysql_result($result,$i,"tdratios");
$f28=mysql_result($result,$i,"tdsetpoint3");
$f29=mysql_result($result,$i,"tdsetpoint3switch");
$f30=mysql_result($result,$i,"stblsp3");
$f31=mysql_result($result,$i,"stblsp3switch");
$f32=mysql_result($result,$i,"tdbeltscale");
$f33=mysql_result($result,$i,"napronoutput");
$f34=mysql_result($result,$i,"napronsp1");
$f35=mysql_result($result,$i,"napronsp2");
$f36=mysql_result($result,$i,"napronspswitch");
$f37=mysql_result($result,$i,"bc01sp1");
$f38=mysql_result($result,$i,"bc01sp2");
$f39=mysql_result($result,$i,"bc01op");
$f40=mysql_result($result,$i,"bc01scale");
?>
<div id="stories">
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">Southeast Table</td>
</tr>
<tr>
<td id="vtitle" id="padded">PV:</a></td>
<td id="sum-count" width="100px"><?php echo $f7; ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">SP1:</a></td>
<td id="sum-count" width="100px"><?php echo $f8; ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">SP2:</a></td>
<td id="sum-count" width="100px"><?php echo $f30; ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<!--
<tr>
<?php
if ($f31 == 1)
echo "<td id=\"vtitle\" id=\"padded\">SP3:</td>";
if ($f31 == 0)
echo "<td id=\"vtitle\" id=\"padded\">SP:</td>";
?>
<?php
if ($f31 == 1)
echo "<td id=\"sum-count\"> $f30</td>";
if ($f31 == 0)
echo "<td id=\"sum-count\"> $f8 </td>";
?>
<td id="vtitle">Tons</a></td>
</tr>
-->
<tr>
<td id="vtitle" id="padded">OP:</a></td>
<td id="sum-count"><?php echo $f5; ?></td>
<td id="vtitle">PCT</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Control</a></td>
<td id="sum-count"> </td>
<?php
if ($f15 == 0)
echo "<td id=\"gopen\">AUTO</td>";
if ($f15 == 1)
echo "<td id=\"gclose\">MANUAL</td>";
?>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">Northeast Table</td>
</tr>
<tr>
<td id="vtitle" id="padded">PV:</td>
<td id="sum-count" width="100px"><?php echo $f3; ?></td>
<td id="vtitle">Tons</td>
</tr>
<tr>
<td id="vtitle" id="padded">SP1:</a></td>
<td id="sum-count" width="100px"><?php echo $f4; ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">SP2:</a></td>
<td id="sum-count" width="100px"><?php echo $f22; ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<!--
<tr>
<?php
if ($f23 == 1)
echo "<td id=\"vtitle\" id=\"padded\">SP2:</td>";
if ($f23 == 0)
echo "<td id=\"vtitle\" id=\"padded\">SP1:</td>";
?>
<?php
if ($f23 == 1)
echo "<td id=\"sum-count\"> $f22 </td>";
if ($f23 == 0)
echo "<td id=\"sum-count\"> $f4 </td>";
?>
<td id="vtitle">Tons</td>
</tr>
-->
<tr>
<td id="vtitle" id="padded">OP:</td>
<td id="sum-count"><?php echo $f2; ?></td>
<td id="vtitle">PCT</td>
</tr>
<td id="vtitle" id="padded">Control</a></td>
<td id="sum-count"> </td>
<?php
if ($f14 == 0)
echo "<td id=\"gopen\">AUTO</td>";
if ($f14 == 1)
echo "<td id=\"gclose\">MANUAL</td>";
?>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">West Table</td>
</tr>
<tr>
<td id="vtitle" id="padded">PV:</td>
<td id="sum-count" width="100px"><?php echo $f10; ?></td>
<td id="vtitle">LBS</td>
</tr>
<tr>
<td id="vtitle" id="padded">SP1:</a></td>
<td id="sum-count" width="100px"><?php echo $f11; ?></td>
<td id="vtitle">LBS</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">SP2:</a></td>
<td id="sum-count" width="100px"><?php echo $f24; ?></td>
<td id="vtitle">LBS</a></td>
</tr>
<!--
<tr>
<?php
if ($f25 == 1)
echo "<td id=\"vtitle\" id=\"padded\">SP2:</td>";
if ($f25 == 0)
echo "<td id=\"vtitle\" id=\"padded\">SP1:</td>";
?>
<?php
if ($f25 == 1)
echo "<td id=\"sum-count\"> $f24 </td>";
if ($f25 == 0)
echo "<td id=\"sum-count\"> $f11 </td>";
?>
<td id="vtitle">Tons</td>
</tr>
-->
<tr>
<td id="vtitle" id="padded">OP:</td>
<td id="sum-count"><?php echo $f9; ?></td>
<td id="vtitle">PCT</td>
</tr>
<td id="vtitle" id="padded">Control</a></td>
<td id="sum-count"> </td>
<?php
if ($f16 == 0)
echo "<td id=\"gopen\">AUTO</td>";
if ($f16 == 1)
echo "<td id=\"gclose\">MANUAL</td>";
?>
</tr>
</table>
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<tr>
<td id="vtitle" id="padded">MCC Tons:</td>
<td id="sum-count" width="100px"><?php echo $f26; ?></td>
<td id="vtitle">Tons</td>
</tr>
</table>
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">South Truck Dump</td>
</tr>
<tr>
<td id="vtitle" id="padded">BC-01 SP1:</td>
<td id="sum-count"><?php echo $f37; ?></td>
<td id="vtitle">LBS</td>
</tr>
<tr>
<td id="vtitle" id="padded">BC-01 SP2:</td>
<td id="sum-count"><?php echo $f38; ?></td>
<td id="vtitle">LBS</td>
</tr>
<tr>
<td id="vtitle" id="padded">BC-01 Ratio:</td>
<td id="sum-count"><?php echo $f27; ?></td>
<td id="vtitle">Tons</td>
</tr>
<tr>
<td id="vtitle" id="padded">BC-01 Output:</td>
<td id="sum-count"><?php echo $f39; ?></td>
<td id="vtitle">%</td>
</tr>
<tr>
<td id="vtitle" id="padded">BC-01 Weight:</td>
<td id="sum-count"><?php echo $f40; ?></td>
<td id="vtitle">LBS</td>
</tr>
<tr>
<td colspan="3" id="title">North Truck Dump</td>
</tr>
<tr>
<td id="vtitle" id="padded">BC-04 SP1:</td>
<td id="sum-count"><?php echo $f19; ?></td>
<td id="vtitle">LBS</td>
</tr>
<tr>
<td id="vtitle" id="padded">BC-04 SP2:</td>
<td id="sum-count"><?php echo $f28; ?></td>
<td id="vtitle">LBS</td>
</tr>
<tr>
<td id="vtitle" id="padded">BC-04 Ratio:</td>
<td id="sum-count"><?php echo $f18; ?></td>
<td id="vtitle">Tons</td>
</tr>
<tr>
<td id="vtitle" id="padded">BC-04 Output:</td>
<td id="sum-count"><?php echo $f12; ?></td>
<td id="vtitle">%</td>
</tr>
<tr>
<td id="vtitle" id="padded">BC-04 Weight:</td>
<td id="sum-count"><?php echo $f32; ?></td>
<td id="vtitle">LBS</td>
</tr>
<!--
<tr>
<?php
if ($f29 == 1)
echo "<td id=\"vtitle\" id=\"padded\">SP2:</td>";
if ($f29 == 0)
echo "<td id=\"vtitle\" id=\"padded\">SP1:</td>";
?>
<?php
if ($f29 == 1)
echo "<td id=\"sum-count\"> $f28 </td>";
if ($f29 == 0)
echo "<td id=\"sum-count\"> $f19 </td>";
?>
<td id="vtitle">Tons</td>
</tr>
<tr>
<td id="vtitle" id="padded">North Apron Output:</td>
<td id="sum-count"><?php echo $f33; ?></td>
<td id="vtitle">PCT</td>
</tr>
<tr>
<?php
if ($f36 == 1)
echo "<td id=\"vtitle\" id=\"padded\">North Apron SP2:</td>";
if ($f36 == 0)
echo "<td id=\"vtitle\" id=\"padded\">North Apron SP1:</td>";
?>
<?php
if ($f36 == 1)
echo "<td id=\"sum-count\"> $f35 </td>";
if ($f36 == 0)
echo "<td id=\"sum-count\"> $f34 </td>";
?>
<td id="vtitle">LBS</td>
</tr>
<tr>
<td id="vtitle" id="padded">Belt Output:</td>
<td id="sum-count"><?php echo $f12; ?></td>
<td id="vtitle">PCT</td>
</tr>
<tr>
<td id="vtitle" id="padded" >Truck Dump Belt Scale:</a></td>
<td id="sum-count" width="150px"><?php echo $f32; ?></td>
<td id="vtitle">LBS</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Ratio North:</td>
<td id="sum-count"><?php echo $f18; ?></td>
<td id="vtitle">PCT
</td>
<tr>
<td id="vtitle" id="padded">Ratio South:</td>
<td id="sum-count"><?php echo $f27; ?></td>
<td id="vtitle">PCT
</td>
</tr>
-->
<?php
if ($f21 == 0)
echo "<td colspan=\"3\" id=\"gopen\">To Mill</td>";
if ($f21 == 1)
echo "<td colspan=\"3\" id=\"gclose\">To Ground</td>";
?>
</tr>
<!--
<tr>
<td colspan="3" id="title">North Truck Dump</td>
</tr>
<tr>
<td id="vtitle" id="padded">24hr Total Dumps:</a></td>
<td id="sum-count"><?php echo $f26; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">YTD Total Dumps:</a></td>
<td id="sum-count"><?php echo $f28; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Time Since Last Dump:</a></td>
<td id="sum-count"><?php include("sincen.php");?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Time Between Dumps:</a></td>
<td id="sum-count"><?php include("dumptimen.php");?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td colspan="3" id="title"> South Truck Dump</td>
</tr>
<tr>
<td id="vtitle" id="padded">24hr Total Dumps:</a></td>
<td id="sum-count"><?php echo $f27; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">YTD Total Dumps:</a></td>
<td id="sum-count"><?php echo $f29; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Time Since Last Dump:</a></td>
<td id="sum-count"><?php include("sinces.php");?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Time Between Dumps:</a></td>
<td id="sum-count"><?php include("dumptimes.php");?></td>
<td id="vtitle"></a></td>
</tr>
-->
</table>
</div>
<?php
$i++;
}
?>

View File

@@ -0,0 +1,14 @@
<php
$httpCall = 'www.google.com/ig/api?weather=' . $postal;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $httpCall);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);
if (strpos($output, 'problem_cause') === false) {
$xml = new SimpleXMLElement($output);
$weather = $xml[0]->weather->current_conditions;
echo 'Current Temperature: ' . $weather->temp_f;
}
?>

View File

@@ -0,0 +1,35 @@
<?php
$serverName = "CBM2K12\SQLEXPRESS";
$uid = "cbmclient";
$pwd = "ascbm2k";
$connectionInfo = array( "UID"=>$uid, "PWD"=>$pwd,'ReturnDatesAsStrings'=> true, "CharacterSet" => 'utf-8', "Database"=>"SugarCaneScale" );
/* Connect using SQL Server Authentication. */
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false )
{
echo "Unable to connect.</br>";
die( print_r( sqlsrv_errors(), true));
}
$sql = "SELECT ROUND (Tons,0) AS Tons FROM LoadData WHERE CropDay = ( SELECT Max(CropDay) FROM LoadData)";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
$tonsin = 0;
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) )
{
$tonsin += $row['Tons'];
}
//end
?>
<?php echo $tonsin; ?>
<?
$db = null;
?>

View File

@@ -0,0 +1,36 @@
<?php
$serverName = "CBM2K12\SQLEXPRESS";
$uid = "cbmclient";
$pwd = "ascbm2k";
$connectionInfo = array( "UID"=>$uid, "PWD"=>$pwd,'ReturnDatesAsStrings'=> true, "CharacterSet" => 'utf-8', "Database"=>"SugarCaneScale" );
/* Connect using SQL Server Authentication. */
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false )
{
echo "Unable to connect.</br>";
die( print_r( sqlsrv_errors(), true));
}
$sql = "SELECT ROUND (Tons,0) AS Tons FROM LoadData WHERE CropDay = ( SELECT Max(CropDay)-1 FROM LoadData)";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
$tonsin = 0;
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) )
{
$tonsin += $row['Tons'];
}
//end
?>
<?php echo $tonsin; ?>
<?
$db = null;
?>

View File

@@ -0,0 +1,35 @@
<?php
$serverName = "CBM2K12\SQLEXPRESS";
$uid = "cbmclient";
$pwd = "ascbm2k";
$connectionInfo = array( "UID"=>$uid, "PWD"=>$pwd,'ReturnDatesAsStrings'=> true, "CharacterSet" => 'utf-8', "Database"=>"SugarCaneScale" );
/* Connect using SQL Server Authentication. */
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false )
{
echo "Unable to connect.</br>";
die( print_r( sqlsrv_errors(), true));
}
$sql = "SELECT ROUND (Tons,0) AS Tons FROM LoadData WHERE CropDay = ( SELECT Max(CropDay) FROM LoadData)";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
$tonsin = 0;
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) )
{
$tonsin += $row['Tons'];
}
//end
?>
<?php echo $tonsin; ?>
<?
$db = null;
?>

View File

@@ -0,0 +1,35 @@
<?php
$serverName = "CBM2K12\SQLEXPRESS";
$uid = "cbmclient";
$pwd = "ascbm2k";
$connectionInfo = array( "UID"=>$uid, "PWD"=>$pwd,'ReturnDatesAsStrings'=> true, "CharacterSet" => 'utf-8', "Database"=>"SugarCaneScale" );
/* Connect using SQL Server Authentication. */
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false )
{
echo "Unable to connect.</br>";
die( print_r( sqlsrv_errors(), true));
}
$sql = "SELECT ROUND (Tons,0) AS Tons FROM LoadData ORDER BY DateIn DESC";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
$tonsin = 0;
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) )
{
$tonsin += $row['Tons'];
}
//end
?>
<?php echo $tonsin; ?>
<?
$db = null;
?>

View File

@@ -0,0 +1,13 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT ROUND(SUM(secavg)) AS sum FROM totalizer";
$result=mysqli_query($con,$query);
$include6=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
echo $include6['sum'];
?>

View File

@@ -0,0 +1,25 @@
<?php
include("../dbinfo.php");
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$query = "SELECT DISTINCT PREVTONS FROM totaltons";
$result=$conn->query($query);
$tonsin = 0;
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
$tonsin += $row['PREVTONS'];
}
} else {
echo "0 results";
}
$conn->close();
?>
<?php echo ($tonsin)+0; ?>

View File

@@ -0,0 +1 @@
0

View File

@@ -0,0 +1,17 @@
$query = "SELECT DISTINCT PREVTONS FROM totaltons";
$result=$conn->query($query);
$tonsin = 0;
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
$tonsin += $row['PREVTONS'];
}
} else {
echo "0 results";
}
$conn->close();
?>
<?php echo ($tonsin)+133323; ?>

View File

@@ -0,0 +1,36 @@
<?php
error_reporting(E_ERROR);
$username="corey";
$password="41945549";
$database="controls";
mysql_connect('127.0.0.1',$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$query = "SELECT DATE_FORMAT(Z_TIMESTAMP,'%Y-%m-%d') AS date, PREVTONS FROM milling GROUP BY PREVTONS ORDER BY id DESC LIMIT 10";
$result=mysql_query($query);
$num=mysql_numrows($result);
mysql_close();
?>
<?php
$i=0;
while ($i < $num) {
$f1=mysql_result($result,$i,"date");
$f2=mysql_result($result,$i,"PREVTONS");
?>
<table border="1" style="border-collapse: collapse; margin: 0px auto;">
<tr>
<td><?php echo $f1; ?></td>
<td><?php echo $f2; ?></td>
</tr>
</table>
<?php
$i++;
}
?>

View File

@@ -0,0 +1,19 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT AVG(wtonshr) AS rate FROM (SELECT wtonshr FROM milling ORDER BY id DESC LIMIT 600) tbl";
$result=mysqli_query($con,$query);
$include5=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<table>
<tr>
<?php echo round($include5['rate'],0); ?>
</tr>
</table>

View File

@@ -0,0 +1,11 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT AVG(wtonshr) AS rate FROM (SELECT wtonshr FROM milling ORDER BY id DESC LIMIT 600) tbl";
$result=mysqli_query($con,$query);
$include7=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
echo round($include7['rate'],0)*24; ?>

View File

@@ -0,0 +1,33 @@
<?php
error_reporting(E_ERROR);
$username="corey";
$password="41945549";
$database="controls";
mysql_connect('127.0.0.1',$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$query = "SELECT (SELECT AVG(wtonshr) FROM milling ORDER BY id DESC LIMIT 600) AS rate, (SELECT avgtcd FROM milling ORDER BY id DESC LIMIT 1) AS eavg";
$result=mysql_query($query);
$num=mysql_numrows($result);
mysql_close();
?>
<?php
$i=0;
while ($i < $num) {
$f1=mysql_result($result,$i,"rate");
$f2=mysql_result($result,$i,"eavg");
?>
<?php echo round($f1,0)*24+$f2; ?>
<?php
$i++;
}
?>

View File

@@ -0,0 +1,15 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT ((SELECT westtotground FROM westtotalground ORDER BY id DESC LIMIT 1) - (SELECT westtotground FROM westtotalground ORDER BY id DESC LIMIT 899, 1))*4 AS westavg";
$result=mysqli_query($con,$query);
$include4=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<?php echo round($include4['westavg']); ?>

View File

@@ -0,0 +1,21 @@
<?php
include("../items.php");
//West 2 AVG time query
$con=mysqli_connect('192.168.0.9', 'corey', '41945549', 'controls');
$query="SELECT DATE FROM plc GROUP BY totwest2 DESC LIMIT 10";
$result=mysqli_query($con, $query);
$west2time = [];
while ($row=mysqli_fetch_array($result, MYSQLI_ASSOC)) {
array_push($west2time, date(strtotime($row['DATE'])));
}
$west2avg=date('i:s', ($west2time[0]-$west2time[9])/10);
mysqli_close($con);
echo $west2avg;
?>

View File

@@ -0,0 +1,21 @@
<?php
include("../items.php");
//West AVG time query
$con=mysqli_connect('192.168.0.9', 'corey', '41945549', 'controls');
$query="SELECT DATE FROM plc GROUP BY totsouth DESC LIMIT 10";
$result=mysqli_query($con, $query);
$westtime = [];
while ($row=mysqli_fetch_array($result, MYSQLI_ASSOC)) {
array_push($westtime, date(strtotime($row['DATE'])));
}
$westavg=date('i:s', ($westtime[0]-$westtime[9])/10);
echo $westavg;
mysqli_close($con);
?>

View File

@@ -0,0 +1,14 @@
<?php
include("../dbinfo.php");
$con=mysqli_connect($host,$username,$password,$database);
$query = "SELECT DISTINCT WestTotal FROM mill_ytd_totals ORDER BY ID DESC LIMIT 1";
$result=mysqli_query($con,$query);
$include1=mysqli_fetch_array($result,MYSQLI_ASSOC);
mysqli_close($con);
?>
<?php echo round($include1['WestTotal']); ?>

View File

@@ -0,0 +1,16 @@
<?php
error_reporting(E_ERROR);
$username="corey";
$password="41945549";
$database="controls";
mysql_connect('127.0.0.1',$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$query = "INSERT INTO output (wmillavgrate) SELECT AVG(wtonshr) FROM (SELECT wtonshr FROM milling ORDER BY id DESC LIMIT 600) AS rate";
$result=mysql_query($query);
$num=mysql_numrows($result);
mysql_close();
?>

View File

@@ -0,0 +1,11 @@
<?php
$con=mysqli_connect('192.168.0.10', 'corey', '41945549', 'controls');
$query="SELECT Avg(ID) FROM historicaldata WHERE ID LIKE 00662 ORDER BY ID LIMIT 900";
$result=mysqli_query($con, $query);
mysqli_close($con);
while($row = mysqli_fetch_assoc ($result)) {
echo"{$row['00662']}";
}
?>

View File

@@ -0,0 +1,57 @@
<?php
include("../dbinfo2.php");
// Check if database connection variables exist
if (!isset($host) || !isset($username) || !isset($password) || !isset($database)) {
die("Database configuration not found in dbinfo2.php");
}
$con = mysqli_connect($host, $username, $password, $database);
// Check connection
if (!$con) {
die("Connection failed: " . mysqli_connect_error());
}
// Define the moisture percentage if it's supposed to come from somewhere
// You may need to adjust this based on your requirements
$query = 0; // or get from $_GET, $_POST, or database
$setSql = "(SELECT DATE_FORMAT(`timestamp`,'%h:%i:%s') AS timeonly, DATE_FORMAT(TIMESTAMP,'%Y-%m-%d') AS dateonly, AVG(BLR1TOTSF) * (100-".$query.") / 100 * 1000 AS BOILER1, AVG(BLR2TOTSF) * (100-".$query.") / 100 * 1000 AS BOILER2, AVG(BLR3TOTSF) * (100-".$query.") / 100 * 1000 AS BOILER3, AVG(BLR4TOTSF) * (100-".$query.") / 100 * 1000 AS BOILER4, AVG(BLR5TOTSF) * (100-".$query.") / 100 * 1000 AS BOILER5, AVG(BLR6TOTSF) * (100-".$query.") / 100 * 1000 AS BOILER6, AVG(BLR7TOTSF) * (100-".$query.") / 100 * 1000 AS BOILER7, AVG(BLR8TOTSF) * (100-".$query.") / 100 * 1000 AS BOILER8
FROM boilerstm24hravg WHERE TIME(`timestamp`) BETWEEN '07:00:00' AND '23:59:59'
GROUP BY dateonly
ORDER BY id ASC)";
$result = mysqli_query($con, $setSql);
// Check query execution
if (!$result) {
die("Query failed: " . mysqli_error($con));
}
// Column headers matching the actual query columns
$columnHeader = "Time" . "\t" . "Date" . "\t" . "Boiler 1" . "\t" . "Boiler 2" . "\t" . "Boiler 3" . "\t" . "Boiler 4" . "\t" . "Boiler 5" . "\t" . "Boiler 6" . "\t" . "Boiler 7" . "\t" . "Boiler 8 " . "\t";
$setData = '';
while ($rec = mysqli_fetch_row($result)) {
$rowData = '';
foreach ($rec as $value) {
$value = '"' . $value . '"' . "\t";
$rowData .= $value;
}
$setData .= trim($rowData) . "\n";
}
// Close database connection
mysqli_close($con);
// Set headers for Excel download
header("Content-type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=Boiler Steam 24hr Average.xls");
header("Pragma: no-cache");
header("Expires: 0");
echo ucwords($columnHeader) . "\n" . $setData . "\n";
?>

View File

@@ -0,0 +1,755 @@
<?php
// phpcs:ignoreFile
date_default_timezone_set('America/Chicago');
$curDate = date('l, M j, Y h:i:s a');
$configuredBaseUrl = getenv('LASUCA_FEED_URL');
$roundedid = [];
$rounded = [];
$rounded1 = [];
$ID = [];
$value = [];
$endpointDataLoaded = false;
$endpointErrorMessage = null;
try {
if ($configuredBaseUrl !== false && $configuredBaseUrl !== '') {
$baseUrl = rtrim($configuredBaseUrl, '/');
} else {
$baseUrl = 'https://192.168.0.10';
}
$endpointUrl = rtrim($baseUrl, '/') . '/shared-endpoint/public/index.php';
$scheme = parse_url($endpointUrl, PHP_URL_SCHEME) ?: 'http';
$context = null;
if (strcasecmp($scheme, 'https') === 0) {
$host = parse_url($endpointUrl, PHP_URL_HOST) ?: 'localhost';
if (in_array($host, ['localhost', '127.0.0.1', '192.168.0.10'], true)) {
$context = stream_context_create([
'ssl' => [
'verify_peer' => false,
'verify_peer_name' => false,
],
]);
}
}
$response = @file_get_contents($endpointUrl, false, $context ?: null);
if ($response === false && strcasecmp($scheme, 'https') === 0) {
$fallbackUrl = preg_replace('#^https#i', 'http', $endpointUrl);
$response = @file_get_contents($fallbackUrl);
if ($response !== false) {
$endpointUrl = $fallbackUrl;
}
}
if ($response === false) {
throw new RuntimeException('Unable to reach shared endpoint: ' . $endpointUrl);
}
try {
$payload = json_decode($response, true, flags: JSON_THROW_ON_ERROR);
} catch (JsonException $exception) {
throw new RuntimeException('Malformed JSON from shared endpoint', 0, $exception);
}
if (($payload['status'] ?? null) !== 'ok') {
$message = $payload['message'] ?? 'unknown error';
throw new RuntimeException('Shared endpoint returned an error: ' . $message);
}
if (!isset($payload['items']) || !is_array($payload['items'])) {
$snippet = substr(strip_tags($response), 0, 200);
throw new RuntimeException('Shared endpoint response missing items. Snippet: ' . $snippet);
}
foreach ($payload['items'] as $item) {
$tagKey = str_pad((string) $item['tagId'], 5, '0', STR_PAD_LEFT);
$value[$item['name']] = $item['value'];
$rounded[$item['name']] = $item['rounded1'];
$rounded1[$item['name']] = $item['rounded2'];
$roundedid[$tagKey] = $item['rounded2'];
$ID[$tagKey] = $item['value'];
}
$endpointDataLoaded = true;
} catch (Throwable $exception) {
$endpointErrorMessage = $exception->getMessage();
error_log('Milling shared endpoint failed: ' . $endpointErrorMessage);
}
$dataSourceLabel = 'Shared endpoint';
if (!$endpointDataLoaded) {
require __DIR__ . '/../items.php';
require __DIR__ . '/../items2dec.php';
$dataSourceLabel = 'Legacy items.php data';
}
?>
<div id="stories">
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<tr >
<td id="datetime" colspan="4">
<?php echo $curDate; ?>
</td>
</tr>
<?php require __DIR__ . '/../includes/alerts.php'; ?>
<tr class="milling-alt-row">
<td id="vtitle" colspan="4">
Data source: <?php echo htmlspecialchars($dataSourceLabel, ENT_QUOTES, 'UTF-8'); ?>
<?php if ($endpointErrorMessage !== null) : ?>
<br><small class="text-muted">Endpoint error: <?php echo htmlspecialchars($endpointErrorMessage, ENT_QUOTES, 'UTF-8'); ?></small>
<?php endif; ?>
</td>
</tr>
<tr>
<td colspan="3" id="title">Bagasse Gates</td>
</tr>
<tr>
<td id="vtitle" id="padded">Gate 1</a></td>
<?php
if ($value['BAGGASSE_GATESW'] == 1) {
echo "<td colspan=\"3\" id=\"gopen\">OPEN</td>";
}
if ($value['BAGGASSE_GATESW'] == 0) {
echo "<td colspan=\"3\" id=\"gclose\">CLOSED</td>";
}
?>
</tr>
<tr>
<td id="vtitle" id="padded">Gate 2</a></td>
<?php
if ($value['BAGASSE_GATESW_2'] == 1) {
echo "<td colspan=\"3\" id=\"gopen\">OPEN</td>";
}
if ($value['BAGASSE_GATESW_2'] == 0) {
echo "<td colspan=\"3\" id=\"gclose\">CLOSED</td>";
}
?>
</tr>
<tr>
<td id="vtitle" id="padded">Gate 3</a></td>
<?php
if ($value['BAGASSE_GATESW_3'] == 1) {
echo "<td colspan=\"3\" id=\"gopen\">OPEN</td>";
}
if ($value['BAGASSE_GATESW_3'] == 0) {
echo "<td colspan=\"3\" id=\"gclose\">CLOSED</td>";
}
?>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">Overview</td>
</tr>
<tr>
<td width="50%" id="vtitle" id="padded">Exhaust Pressure</a></td>
<td width="30%" id="sum-count"><?php echo $ID['00302']; ?></td>
<td id="vtitle">PSI</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Total Steam Flow</a></td>
<td id="sum-count"><?php echo $value['TTL_STEAMFLOW']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Total Steam Flow 2</a></td>
<td id="sum-count"><?php echo $value['TTL_STEAMFLOW2']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Live Steam Pressure</a></td>
<td id="sum-count"><?php echo $value['PT_001']; ?></td>
<td id="vtitle">PSI</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Exhaust RSP</a></td>
<td id="sum-count"><?php echo $value['Exhaust RSP']; ?></td>
<td id="vtitle">PSI</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Exhaust Steam Flow 1</a></td>
<td id="sum-count"><?php echo $value['Exhaust Flow 1']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Exhaust Steam Flow 2</a></td>
<td id="sum-count"><?php echo $value['Exhaust Flow 2']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Exhaust Steam Flow 3</a></td>
<td id="sum-count"><?php echo $value['Exhaust Flow 3']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td id="vtitle" id="padded">Exhaust 1 A/M</a></td>
<?php
if ($value['Exhaust 1 A/M'] == 0) {
echo "<td colspan=\"3\" id=\"gopen\">AUTO</td>";
}
if ($value['Exhaust 1 A/M'] == 1) {
echo "<td colspan=\"3\" id=\"gclose\">MANUAL</td>";
}
?>
</tr>
<tr>
<td id="vtitle" id="padded">Exhaust 2 A/M</a></td>
<?php
if ($value['Exhaust 2 A/M'] == 0) {
echo "<td colspan=\"3\" id=\"gopen\">AUTO</td>";
}
if ($value['Exhaust 2 A/M'] == 1) {
echo "<td colspan=\"3\" id=\"gclose\">MANUAL</td>";
}
?>
</tr>
<tr>
<td id="vtitle" id="padded">Exhaust 3 A/M</a></td>
<?php
if ($value['Exhaust 3 A/M'] == 0) {
echo "<td colspan=\"3\" id=\"gopen\">AUTO</td>";
}
if ($value['Exhaust 3 A/M'] == 1) {
echo "<td colspan=\"3\" id=\"gclose\">MANUAL</td>";
}
?>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">Feed Water</td>
</tr>
<tr>
<td width="50%" id="vtitle" id="padded">Feed Water Pressure 1-6</a></td>
<td width="30%" id="sum-count"><?php echo $value['Feed Water Pressure 1-6']; ?></td>
<td id="vtitle">psi</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Feed Water Pressure 7-8</a></td>
<td id="sum-count"><?php echo $value['Feed Water Pressure 7-8']; ?></td>
<td id="vtitle">psi</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Feed Water 2 RPM</a></td>
<td id="sum-count"><?php echo $value['Feed Water 2 RPM']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Feed Water 3 RPM</a></td>
<td id="sum-count"><?php echo $value['Feed Water 3 RPM']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Feed Water 4 RPM</a></td>
<td id="sum-count"><?php echo $value['Feed Water 4 RPM']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Feed Water 5 RPM</a></td>
<td id="sum-count"><?php echo $value['Feed Water 5 RPM']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Feed Water 6 RPM</a></td>
<td id="sum-count"><?php echo $value['Feed Water 6 RPM']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Feed Water 8 RPM</a></td>
<td id="sum-count"><?php echo $value['Feed Water 8 RPM']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Feed Water 9 RPM</a></td>
<td id="sum-count"><?php echo $value['Feed Water 9 RPM']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
</table>
<table
class="col-4 boiler-panel-table"
border="1"
cellspacing="0"
cellpadding="4"
data-boiler-section="boiler-1"
data-boiler-title="Boiler 1"
data-steam-value="<?php echo htmlspecialchars($ID['00310']); ?>"
data-steam-units="kpph"
>
<tr>
<td colspan="3" id="title">Boiler 1</td>
</tr>
<tr>
<td width="50%" id="vtitle" id="padded">Steam Flow</a></td>
<td width="30%" id="sum-count"><?php echo $ID['00310']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Level</a></td>
<td id="sum-count"><?php echo $value['LT_102']; ?></td>
<td id="vtitle">%</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Feed Water Flow</a></td>
<td id="sum-count"><?php echo $value['FT_103']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Pressure</a></td>
<td id="sum-count"><?php echo $value['PT_105']; ?></td>
<td id="vtitle">psi</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">ID Fan Speed</a></td>
<td id="sum-count"><?php echo $value['SIT_104']; ?></td>
<td id="vtitle">rpm</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">ID Temp</a></td>
<td id="sum-count"><?php echo $value['BLR1_IDTEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">FD Temp</a></td>
<td id="sum-count"><?php echo $value['BLR1_FDTEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Flue Gas Temp</a></td>
<td id="sum-count"><?php echo $value['BLR1_FLUGAS_TEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">&nbsp</a></td>
<td id="sum-count"></td>
<td id="vtitle"></a></td>
</tr>
</table>
<table
class="col-4 boiler-panel-table"
border="1"
cellspacing="0"
cellpadding="4"
data-boiler-section="boiler-2"
data-boiler-title="Boiler 2"
data-steam-value="<?php echo htmlspecialchars($ID['00314']); ?>"
data-steam-units="kpph"
>
<tr>
<td colspan="3" id="title">Boiler 2</td>
</tr>
<tr>
<td width="50%" id="vtitle" id="padded">Steam Flow</a></td>
<td width="30%" id="sum-count"><?php echo $ID['00314']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Level</a></td>
<td id="sum-count"><?php echo $value['LT_202']; ?></td>
<td id="vtitle">%</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Feed Water Flow</a></td>
<td id="sum-count"><?php echo $value['FT_103']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Pressure</a></td>
<td id="sum-count"><?php echo $value['PT_205']; ?></td>
<td id="vtitle">psi</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">ID Fan Speed</a></td>
<td id="sum-count"><?php echo $value['SIT_204']; ?></td>
<td id="vtitle">rpm</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">ID Temp</a></td>
<td id="sum-count"><?php echo $value['BLR2_IDTEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">FD Temp</a></td>
<td id="sum-count"><?php echo $value['BLR2_FDTEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Flue Gas Temp</a></td>
<td id="sum-count"><?php echo $value['BLR2_FLU_TEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Steam Temp</a></td>
<td id="sum-count"><?php echo $value['BLR2SUPERHEAT']; ?></td>
<td id="vtitle">F</a></td>
</tr>
</table>
<table
class="col-4 boiler-panel-table"
border="1"
cellspacing="0"
cellpadding="4"
data-boiler-section="boiler-3"
data-boiler-title="Boiler 3"
data-steam-value="<?php echo htmlspecialchars($value['FT_301']); ?>"
data-steam-units="kpph"
>
<tr>
<td colspan="3" id="title">Boiler 3</td>
</tr>
<tr>
<td width="50%" id="vtitle" id="padded">Steam Flow</a></td>
<td width="30%" id="sum-count"><?php echo $value['FT_301']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Level</a></td>
<td id="sum-count"><?php echo $value['LT_302']; ?></td>
<td id="vtitle">%</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Feed Water Flow</a></td>
<td id="sum-count"><?php echo $value['FT_303']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Pressure</a></td>
<td id="sum-count"><?php echo $value['PT_305']; ?></td>
<td id="vtitle">psi</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">ID Fan Speed</a></td>
<td id="sum-count"><?php echo $value['SIT_304']; ?></td>
<td id="vtitle">rpm</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">ID Temp</a></td>
<td id="sum-count"><?php echo $value['BLR3_IDTEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">FD Temp</a></td>
<td id="sum-count"><?php echo $value['BLR3_FDTEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Flue Gas Temp</a></td>
<td id="sum-count"><?php echo $value['BLR3_FLUE_TEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Draft</a></td>
<td id="sum-count"><?php echo $value['BOILR3_DRAFTACTU']; ?></td>
<td id="vtitle">F</a></td>
</tr>
</table>
<table
class="col-4 boiler-panel-table"
border="1"
cellspacing="0"
cellpadding="4"
data-boiler-section="boiler-4"
data-boiler-title="Boiler 4"
data-steam-value="<?php echo htmlspecialchars($value['FT_401']); ?>"
data-steam-units="kpph"
>
<tr>
<td colspan="3" id="title">Boiler 4</td>
</tr>
<tr>
<td width="50%" id="vtitle" id="padded">Steam Flow</a></td>
<td width="30%" id="sum-count"><?php echo $value['FT_401']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Level</a></td>
<td id="sum-count"><?php echo $value['LT_402']; ?></td>
<td id="vtitle">%</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Feed Water Flow</a></td>
<td id="sum-count"><?php echo $value['FT_403']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Pressure</a></td>
<td id="sum-count"><?php echo $value['PT_405']; ?></td>
<td id="vtitle">psi</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">ID Fan Speed</a></td>
<td id="sum-count"><?php echo $value['SIT_404']; ?></td>
<td id="vtitle">rpm</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">ID Temp</a></td>
<td id="sum-count"><?php echo $value['BLR4_IDTEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">FD Temp</a></td>
<td id="sum-count"><?php echo $value['BLR4_FDTEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Flue Gas Temp</a></td>
<td id="sum-count"><?php echo $value['BLR4FLUGAS']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Draft</a></td>
<td id="sum-count"><?php echo $value['BOILR4_DRAFTACTU']; ?></td>
<td id="vtitle">F</a></td>
</tr>
</table>
<table
class="col-4 boiler-panel-table"
border="1"
cellspacing="0"
cellpadding="4"
data-boiler-section="boiler-5"
data-boiler-title="Boiler 5"
data-steam-value="<?php echo htmlspecialchars($value['FT_501']); ?>"
data-steam-units="kpph"
>
<tr>
<td colspan="3" id="title">Boiler 5</td>
</tr>
<tr>
<td width="50%" id="vtitle" id="padded">Steam Flow</a></td>
<td width="30%" id="sum-count"><?php echo $value['FT_501']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Level</a></td>
<td id="sum-count"><?php echo $value['LT_502']; ?></td>
<td id="vtitle">%</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Feed Water Flow</a></td>
<td id="sum-count"><?php echo $value['FT_503']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Pressure</a></td>
<td id="sum-count"><?php echo $value['PT_505']; ?></td>
<td id="vtitle">psi</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">ID Fan Speed</a></td>
<td id="sum-count"><?php echo $value['SIT_504']; ?></td>
<td id="vtitle">rpm</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">ID Temp</a></td>
<td id="sum-count"><?php echo $value['BLR5_IDTEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">FD Temp</a></td>
<td id="sum-count"><?php echo $value['BLR5_FDTEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Flue Gas Temp</a></td>
<td id="sum-count"><?php echo $value['BLR5FLUGAS']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Draft</a></td>
<td id="sum-count"><?php echo $value['BOILR5_DRAFTACTU']; ?></td>
<td id="vtitle">F</a></td>
</tr>
</table>
<table
class="col-4 boiler-panel-table"
border="1"
cellspacing="0"
cellpadding="4"
data-boiler-section="boiler-6"
data-boiler-title="Boiler 6"
data-steam-value="<?php echo htmlspecialchars($value['FT_601']); ?>"
data-steam-units="kpph"
>
<tr>
<td colspan="3" id="title">Boiler 6</td>
</tr>
<tr>
<td width="50%" id="vtitle" id="padded">Steam Flow</a></td>
<td width="30%" id="sum-count"><?php echo $value['FT_601']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Level</a></td>
<td id="sum-count"><?php echo $value['LT_602']; ?></td>
<td id="vtitle">%</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Feed Water Flow</a></td>
<td id="sum-count"><?php echo $value['FT_603']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Pressure</a></td>
<td id="sum-count"><?php echo $value['PT_605']; ?></td>
<td id="vtitle">psi</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">ID Fan Speed</a></td>
<td id="sum-count"><?php echo $value['SIT_604']; ?></td>
<td id="vtitle">rpm</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">ID Temp</a></td>
<td id="sum-count"><?php echo $value['BLR6_IDTEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">FD Temp</a></td>
<td id="sum-count"><?php echo $value['BLR6_FDTEMP']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Flue Gas Temp</a></td>
<td id="sum-count"><?php echo $value['BLR6FLUGAS']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Steam Temp</a></td>
<td id="sum-count"><?php echo $value['BLR6SUPERHEAT']; ?></td>
<td id="vtitle">F</a></td>
</tr>
</table>
<table
class="col-4 boiler-panel-table"
border="1"
cellspacing="0"
cellpadding="4"
data-boiler-section="boiler-7"
data-boiler-title="Boiler 7"
data-steam-value="<?php echo htmlspecialchars($ID['00050']); ?>"
data-steam-units="kpph"
>
<tr>
<td colspan="3" id="title">Boiler 7</td>
</tr>
<tr>
<td width="50%" id="vtitle" id="padded">Steam Flow</a></td>
<td width="30%" id="sum-count"><?php echo $ID['00050']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Level</a></td>
<td id="sum-count"><?php echo $ID['00024']; ?></td>
<td id="vtitle">%</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Feed Water Flow</a></td>
<td id="sum-count"><?php echo $ID['00034']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Pressure</a></td>
<td id="sum-count"><?php echo $ID['00030']; ?></td>
<td id="vtitle">psi</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">ID Fan Speed</a></td>
<td id="sum-count"><?php echo $ID['00040']; ?></td>
<td id="vtitle">rpm</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">ID Temp</a></td>
<td id="sum-count"><?php echo $ID['00042']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">FD Temp</a></td>
<td id="sum-count"><?php echo $ID['00032']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Flue Gas Temp</a></td>
<td id="sum-count"><?php echo $ID['00038']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Steam Temp</a></td>
<td id="sum-count"><?php echo $ID['00048']; ?></td>
<td id="vtitle">F</a></td>
</tr>
</table>
<table
class="col-4 boiler-panel-table"
border="1"
cellspacing="0"
cellpadding="4"
data-boiler-section="boiler-8"
data-boiler-title="Boiler 8"
data-steam-value="<?php echo htmlspecialchars($ID['00078']); ?>"
data-steam-units="kpph"
>
<tr>
<td colspan="3" id="title">Boiler 8</td>
</tr>
<tr>
<td width="50%" id="vtitle" id="padded">Steam Flow</a></td>
<td width="30%" id="sum-count"><?php echo $ID['00078']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Level</a></td>
<td id="sum-count"><?php echo $ID['00052']; ?></td>
<td id="vtitle">%</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Feed Water Flow</a></td>
<td id="sum-count"><?php echo $ID['00062']; ?></td>
<td id="vtitle">kpph</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Pressure</a></td>
<td id="sum-count"><?php echo $ID['00058']; ?></td>
<td id="vtitle">psi</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">ID Fan Speed</a></td>
<td id="sum-count"><?php echo $ID['00068']; ?></td>
<td id="vtitle">rpm</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">ID Temp</a></td>
<td id="sum-count"><?php echo $ID['00070']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">FD Temp</a></td>
<td id="sum-count"><?php echo $ID['00060']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Flue Gas Temp</a></td>
<td id="sum-count"><?php echo $ID['00066']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Steam Temp</a></td>
<td id="sum-count"><?php echo $ID['00076']; ?></td>
<td id="vtitle">F</a></td>
</tr>
</table>
</div>

View File

@@ -0,0 +1,29 @@
<?php
$serverName = "CBM2K12\SQLEXPRESS";
$uid = "cbmclient";
$pwd = "ascbm2k";
$connectionInfo = array( "UID"=>$uid, "PWD"=>$pwd,'ReturnDatesAsStrings'=> true, "CharacterSet" => 'utf-8', "Database"=>"SugarCaneScale" );
/* Connect using SQL Server Authentication. */
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false )
{
echo "Unable to connect.</br>";
die( print_r( sqlsrv_errors(), true));
}
$sql = "SELECT CropDay FROM Parameters";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) {
echo $row['CropDay'];
}
sqlsrv_free_stmt( $stmt);
sqlsrv_close( $conn);
?>

View File

@@ -0,0 +1,222 @@
<?php
date_default_timezone_set('America/Chicago');
$curDate = date('l, M j, Y h:i:s a');
require "../includes/itemsAI.php";
$sanitizePercent = static function ($rawValue) {
$numeric = is_numeric($rawValue) ? (double) $rawValue : 0.0;
return $numeric > 10000 ? 0 : $numeric;
};
$renderPercent = static function (string $key, int $decimals = 0) use (&$value, &$rounded, $sanitizePercent) {
// Use $rounded (2 decimals from DB) when decimals requested, otherwise $value (0 decimals)
$source = $decimals > 0 ? $rounded : $value;
$val = $sanitizePercent($source[$key] ?? 0);
return number_format($val, $decimals);
};
?>
<table>
<tr >
<td id="datetime" colspan="4">
<?php echo $curDate; ?>
</td>
</tr>
<?php require __DIR__ . '/../includes/alerts.php'; ?>
</table>
<table
class="col-4 boiler-panel-table"
border="1"
cellspacing="0"
cellpadding="4"
data-boiler-section="fab-2"
data-boiler-title="C-CVP DATA"
> <tr>
<td colspan="4" id="title">C-CVP</td>
</tr>
<tr>
<td colspan="4" id="title">Side 1</td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1" width="30%"></td>
<td id="vtitle" id="padded">Brix PV</td>
<td id="vtitle" id="padded">Brix SP</td>
<td id="vtitle" id="padded">Brix CV</td>
</tr>
<tr>
<td id="vtitle" id="padded">CELL 1</td>
<td id="sum-count"><?php echo $renderPercent('C01 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('C01 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('C01 CV'); ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded">CELL 2</td>
<td id="sum-count"><?php echo $renderPercent('C02 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('C02 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('C02 CV'); ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded">CELL 3</td>
<td id="sum-count"><?php echo $renderPercent('C03 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('C03 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('C03 CV'); ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded">CELL 4</td>
<td id="sum-count"><?php echo $renderPercent('C04 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('C04 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('C04 CV'); ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded">CELL 5</td>
<td id="sum-count"><?php echo $renderPercent('C05 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('C05 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('C05 CV'); ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded">CELL 6</td>
<td id="sum-count"><?php echo $renderPercent('C06 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('C06 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('C06 CV'); ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded">CELL 7</td>
<td id="sum-count"><?php echo $renderPercent('C07 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('C07 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('C07 CV'); ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded">CELL 8</td>
<td id="sum-count"><?php echo $renderPercent('C08 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('C08 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('C08 CV'); ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1" width="40%"></td>
<td id="vtitle" id="padded">PRS PV</td>
<td id="vtitle" id="padded">PRS SP</td>
<td id="vtitle" id="padded">PRS CV</td>
</tr>
<tr>
<td id="vtitle">Vapor PSIG</td>
<td id="sum-count"><?php echo $renderPercent('PCV C01 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('PCV C01 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('PCV C01 CV'); ?>%</td>
</tr>
<tr>
<td id="vtitle">Water Vacuum</td>
<td id="sum-count"><?php echo $renderPercent('PCV C02 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('PCV C02 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('PCV C02 CV'); ?>%</td>
</tr>
<!---More rows can be added here as needed--->
<tr>
<td colspan="2" id="vtitle" id="padded">Molasses Flow</td>
<td colspan="2" id="sum-count"><?php echo $renderPercent('MolassesFlow C01'); ?> CFH</td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">Grain Flow</td>
<td colspan="2" id="sum-count"><?php echo $renderPercent('GrainFlow C03'); ?> CFH</td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">Condensate</td>
<td colspan="2" id="sum-count"><?php echo $renderPercent('CondensateFlow C03'); ?> CFH</td>
</tr>
<tr>
<td colspan="4" id="title">Side 2</td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1" width="30%"></td>
<td id="vtitle" id="padded">Brix PV</td>
<td id="vtitle" id="padded">Brix SP</td>
<td id="vtitle" id="padded">Brix CV</td>
</tr>
<tr>
<td id="vtitle" id="padded">CELL 1</td>
<td id="sum-count"><?php echo $renderPercent('B01 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('B01 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('B01 CV'); ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded">CELL 2</td>
<td id="sum-count"><?php echo $renderPercent('B02 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('B02 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('B02 CV'); ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded">CELL 3</td>
<td id="sum-count"><?php echo $renderPercent('B03 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('B03 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('B03 CV'); ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded">CELL 4</td>
<td id="sum-count"><?php echo $renderPercent('B04 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('B04 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('B04 CV'); ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded">CELL 5</td>
<td id="sum-count"><?php echo $renderPercent('B05 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('B05 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('B05 CV'); ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded">CELL 6</td>
<td id="sum-count"><?php echo $renderPercent('B06 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('B06 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('B06 CV'); ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded">CELL 7</td>
<td id="sum-count"><?php echo $renderPercent('B07 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('B07 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('B07 CV'); ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded">CELL 8</td>
<td id="sum-count"><?php echo $renderPercent('B08 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('B08 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('B08 CV'); ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1" width="40%"></td>
<td id="vtitle" id="padded">PRS PV</td>
<td id="vtitle" id="padded">PRS SP</td>
<td id="vtitle" id="padded">PRS CV</td>
</tr>
<tr>
<td id="vtitle">Vapor PSIG</td>
<td id="sum-count"><?php echo $renderPercent('PCV B01 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('PCV B01 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('PCV B01 CV'); ?>%</td>
</tr>
<tr>
<td id="vtitle">Water Vacuum</td>
<td id="sum-count"><?php echo $renderPercent('PCV B02 PV', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('PCV B02 SP', 1); ?></td>
<td id="sum-count"><?php echo $renderPercent('PCV B02 CV'); ?>%</td>
</tr>
<!---More rows can be added here as needed--->
<tr>
<td colspan="2" id="vtitle" id="padded">Molasses Flow</td>
<td colspan="2" id="sum-count"><?php echo $renderPercent('MolassesFlow B01'); ?> CFH</td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">Grain Flow</td>
<td colspan="2" id="sum-count"><?php echo $renderPercent('GrainFlow B03'); ?> CFH</td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">Condensate</td>
<td colspan="2" id="sum-count"><?php echo $renderPercent('CondensateFlow B03'); ?> CFH</td>
</tr>
</table>

View File

@@ -0,0 +1,695 @@
<?php
date_default_timezone_set('America/Chicago');
$curDate = date('l, M j, Y h:i:s a');
require "../includes/itemsAI.php";
?>
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<tr >
<td id="datetime" colspan="4">
<?php echo $curDate; ?>
</td>
</tr>
<?php require __DIR__ . '/../includes/alerts.php'; ?>
<tr>
<td colspan="1" width="50%" id="vtitle" id="padded">Broadbent Tank :</a></td>
<td colspan="1" width="50%"><progress id="progresstanks" data-label="<?php echo $value['BBTankLvl']; ?>%" max="100" value="<?php echo $value['BBTankLvl']; ?>"></progress></td>
<tr>
</tr>
<td colspan="1" width="50%" id="vtitle" id="padded">A CVP Massecuite Tank :</a></td>
<td colspan="1" width="50%"><progress id="progresstanks" data-label="<?php echo $value['ACVPMassecuiteLVL']; ?>%" max="100" value="<?php echo $value['ACVPMassecuiteLVL']; ?>"></progress></td>
</tr>
<tr>
<td colspan="4" id="title">Dryers Run/Stop</td>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr width="20%" id="vtitle">
<?php
//A1
if ($value['A1Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A1</td>";
} else if ($value['A1Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A1</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A2
if ($value['A2Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A2</td>";
} else if ($value['A2Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A2</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A3
if ($value['A3Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A3</td>";
} else if ($value['A3Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A3</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A4
if ($value['A4Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A4</td>";
} else if ($value['A4Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A4</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A5
if ($value['A5Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A5</td>";
} else if ($value['A5Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A5</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
?>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr width="20%" id="vtitle">
<?php
//A6
if ($value['A6Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A6</td>";
} else if ($value['A6Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A6</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A7
if ($value['A7Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A7</td>";
} else if ($value['A7Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A7</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A8
if ($value['OnOff'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">BB</td>";
} else if ($value['OnOff'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">BB</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A9
if ($value['A9Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A9</td>";
} else if ($value['A9Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A9</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A10
if ($value['A10Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A10</td>";
} else if ($value['A10Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A10</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
?>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr width="20%" id="vtitle">
<?php
//A11
if ($value['A11Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A11</td>";
} else if ($value['A11Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A11</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A12
if ($value['A12Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A12</td>";
} else if ($value['A12Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A12</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A13
if ($value['A13Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A13</td>";
} else if ($value['A13Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A13</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A14
if ($value['A14Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A14</td>";
} else if ($value['A14Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A14</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
//A15
if ($value['A15Running'] == 1) {
echo "<td width=\"6.66%\" id=\"dryerson\">A15</td>";
} else if ($value['A15Running'] == 0) {
echo "<td width=\"6.66%\" id=\"dryersoff\">A15</td>";
} else {
echo "<td width=\"6.66%\" id=\"dryersoff\">ERROR</td>";
}
?>
</tr>
</table>
<table
class="col-4 boiler-panel-table"
border="1"
cellspacing="0"
cellpadding="4"
data-boiler-section="fab-1"
data-boiler-title="Pre Evaporators"
>
<tr>
<td colspan="4" id="title">Pre Evaporators</td>
</tr>
<tr>
<td colspan="4" id="title">Pre 1 South</td>
</tr>
<tr>
<td id="vtitle" width="50%">Level</td>
<td><progress id="progresstanks" data-label="<?php echo $value['Pre1SouthLVL']; ?>%" max="100" value="<?php echo $value['Pre1SouthLVL']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle">Level SP</td>
<td id="sum-count"><?php echo $value['Pre1SouthSP']; ?>%</td>
</tr>
<tr>
<td colspan="4" id="title">Pre 2 North</td>
</tr>
<tr>
<td id="vtitle" width="50%">Level</td>
<td><progress id="progresstanks" data-label="<?php echo $value['Pre2NorthLVL']; ?>%" max="100" value="<?php echo $value['Pre2NorthLVL']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle">Level SP</td>
<td id="sum-count"><?php echo $value['Pre2NorthSP']; ?>%</td>
</tr>
<tr>
<td colspan="4" id="title">Pre 3 35K</td>
</tr>
<tr>
<td id="vtitle" width="50%">Level</td>
<td><progress id="progresstanks" data-label="<?php echo $value['Pre335kLVL']; ?>%" max="100" value="<?php echo $value['Pre335kLVL']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle">Level SP</td>
<td id="sum-count"><?php echo $value['Pre335kSP']; ?>%</td>
</tr>
<tr>
<td colspan="4" id="title">Pre 4 45K</td>
</tr>
<tr>
<td id="vtitle" width="50%">Level</td>
<td><progress id="progresstanks" data-label="<?php echo $value['Pre445kLVL']; ?>%" max="100" value="<?php echo $value['Pre445kLVL']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle">Level SP</td>
<td id="sum-count"><?php echo $value['Pre445kSP']; ?>%</td>
</tr>
</table>
<table
class="col-4 boiler-panel-table"
border="1"
cellspacing="0"
cellpadding="4"
data-boiler-section="fab-2"
data-boiler-title="Evaporators"
>
<tr>
<td colspan="4" id="title">Evaporators</td>
</tr>
<tr>
<td colspan="4" id="title">West Set - A Set</td>
</tr>
<tr>
<td width="25%"></td>
<td width="25%" id="vtitle">1st</td>
<td width="25%" id="vtitle">2nd</td>
<td width="25%" id="vtitle">3rd</td>
</tr>
<tr>
<td id="vtitle">Level</td>
<td><progress id="progresstanks" data-label="<?php echo $value['WestA1Lvl']; ?>%" max="100" value="<?php echo $value['WestA1Lvl']; ?>"></progress></td>
<td><progress id="progresstanks" data-label="<?php echo $value['WestA2Lvl']; ?>%" max="100" value="<?php echo $value['WestA2Lvl']; ?>"></progress></td>
<td><progress id="progresstanks" data-label="<?php echo $value['WestA3Lvl']; ?>%" max="100" value="<?php echo $value['WestA3Lvl']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle">Level SP</td>
<td id="sum-count"><?php echo $value['WestA1LvlSP']; ?>%</td>
<td id="sum-count"><?php echo $value['WestA2LvlSP']; ?>%</td>
<td id="sum-count"><?php echo $value['WestA3LvlSP']; ?>%</td>
</tr>
<tr>
<td id="vtitle">Feed Valve </td>
<td id="sum-count"><?php echo $value['WestA1FV']; ?>%</td>
<td id="sum-count"><?php echo $value['WestA2FV']; ?>%</td>
<td id="sum-count"><?php echo $value['WsetA3FV']; ?>%</td>
</tr>
<tr>
<td colspan="2" id="vtitle">Vacuum SP</td>
<td colspan="2" id="sum-count"><?php echo $value['WestAVacuumSP']; ?></td>
</tr>
<tr>
<td colspan="2" id="vtitle">Vacuum</td>
<td colspan="2" id="sum-count"><?php echo $rounded['WestAVacuum']; ?></td>
</tr>
<tr>
<td colspan="2" id="vtitle">Brix SP</td>
<td colspan="2" id="sum-count"><?php echo $value['WestABrixSP']; ?></td>
</tr>
<tr>
<td colspan="2" id="vtitle">Brix</td>
<td colspan="2" id="sum-count"><?php echo $rounded['WestABrix']; ?></td>
</tr>
<tr>
<td colspan="4" id="title">East Set - B Set</td>
</tr>
<tr>
<td width="25%"></td>
<td width="25%" id="vtitle">1st</td>
<td width="25%" id="vtitle">2nd</td>
<td width="25%" id="vtitle">3rd</td>
</tr>
<tr>
<td id="vtitle">Level</td>
<td><progress id="progresstanks" data-label="<?php echo $value['EastB1Lvl']; ?>%" max="100" value="<?php echo $value['EastB1Lvl']; ?>"></progress></td>
<td><progress id="progresstanks" data-label="<?php echo $value['EastB2Lvl']; ?>%" max="100" value="<?php echo $value['EastB2Lvl']; ?>"></progress></td>
<td><progress id="progresstanks" data-label="<?php echo $value['EastB3Lvl']; ?>%" max="100" value="<?php echo $value['EastB3Lvl']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle">Level SP</td>
<td id="sum-count"><?php echo $value['EastB1LvlSP']; ?>%</td>
<td id="sum-count"><?php echo $value['EastB2LvlSP']; ?>%</td>
<td id="sum-count"><?php echo $value['EastB3LvlSP']; ?>%</td>
</tr>
<tr>
<td id="vtitle">Feed Valve </td>
<td id="sum-count"><?php echo $value['EastB1FV']; ?>%</td>
<td id="sum-count"><?php echo $value['EastB2FV']; ?>%</td>
<td id="sum-count"><?php echo $value['EastB3FV']; ?>%</td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">Vacuum SP</td>
<td colspan="2" id="sum-count"><?php echo $value['EastBVacuumSP']; ?></td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">Vacuum</td>
<td colspan="2" id="sum-count"><?php echo $rounded['EastBVacuum']; ?></td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">Brix SP</td>
<td colspan="2" id="sum-count"><?php echo $value['EastBBrixSP']; ?></td>
</tr>
<tr>
<td colspan="2" id="vtitle">Brix</td>
<td colspan="2" id="sum-count"><?php echo $rounded['EastBBrix']; ?></td>
</tr>
<tr>
<td colspan="4" id="title">Big Set - C Set</td>
</tr>
<tr>
<td width="25%"></td>
<td width="25%" id="vtitle">1st</td>
<td width="25%" id="vtitle">2nd</td>
<td width="25%" id="vtitle">3rd</td>
</tr>
<tr>
<td id="vtitle">Level</td>
<td><progress id="progresstanks" data-label="<?php echo $value['BigC1Lvl']; ?>%" max="100" value="<?php echo $value['BigC1Lvl']; ?>"></progress></td>
<td><progress id="progresstanks" data-label="<?php echo $value['BigC2Lvl']; ?>%" max="100" value="<?php echo $value['BigC2Lvl']; ?>"></progress></td>
<td><progress id="progresstanks" data-label="<?php echo $value['BigC3Lvl']; ?>%" max="100" value="<?php echo $value['BigC3Lvl']; ?>"></progress></td>
</tr>
<td id="vtitle">Level SP</td>
<td id="sum-count"><?php echo $value['BigC1LvlSP']; ?>%</td>
<td id="sum-count"><?php echo $value['BigC2LvlSP']; ?>%</td>
<td id="sum-count"><?php echo $value['BigC3LvlSP']; ?>%</td>
</tr>
<tr>
<td id="vtitle">Feed Valve </td>
<td id="sum-count"><?php echo $value['BigC1FV']; ?>%</td>
<td id="sum-count"><?php echo $value['BigC2FV']; ?>%</td>
<td id="sum-count"><?php echo $value['BigC3FV']; ?>%</td>
</tr>
<tr>
<td colspan="2" id="vtitle">Vacuum SP</td>
<td colspan="2" id="sum-count"><?php echo $value['BigCVacuumSP']; ?></td>
</tr>
<tr>
<td colspan="2" id="vtitle">Vacuum</td>
<td colspan="2" id="sum-count"><?php echo $rounded['BigCVacuum']; ?></td>
</tr>
<tr>
<td colspan="2" id="vtitle">Brix SP</td>
<td colspan="2" id="sum-count"><?php echo $value['BigCBrixSP']; ?></td>
</tr>
<tr>
<td colspan="2" id="vtitle">Brix</td>
<td colspan="2" id="sum-count"><?php echo $rounded['BigCBrix']; ?></td>
</tr>
<tr>
<td colspan="4" id="title">45K</td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">Level:</a></td>
<td colspan="2" width="40%"><progress id="progresstanks" data-label="<?php echo $value['45kLVL']; ?>%" max="100" value="<?php echo $value['45kLVL']; ?>"></progress></td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">Level SP:</a></td>
<td id="sum-count"><?php echo $value['45kLVLSP']; ?></td>
<td id="vtitle">%</a></td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">A2 SP:</a></td>
<td id="sum-count"><?php echo $value['45kA2SP']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">A2 Remote SP:</a></td>
<td id="sum-count"><?php echo $value['45kA2RSP']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">A2 Output:</a></td>
<td id="sum-count"><?php echo $value['45kA2Output']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">B2 SP:</a></td>
<td id="sum-count"><?php echo $value['45kB2SP']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">B2 Remote SP:</a></td>
<td id="sum-count"><?php echo $value['45kB2RSP']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">B2 Output:</a></td>
<td id="sum-count"><?php echo $value['45kB2Output']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">C2 SP:</a></td>
<td id="sum-count"><?php echo $value['45kC2SP']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">C2 Remote SP:</a></td>
<td id="sum-count"><?php echo $value['45kC2RSP']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">C2 Output:</a></td>
<td id="sum-count"><?php echo $value['45kC2Output']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">Calendria PSI:</a></td>
<td id="sum-count"><?php echo $value['45kCalendriaPSI']; ?></td>
<td id="vtitle">PSI</a></td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">Calendria Temp:</a></td>
<td id="sum-count"><?php echo $value['45kCalendriaTemp']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">Calendria Relief SP:</a></td>
<td id="sum-count"><?php echo $value['45kCalendriaReliefSP']; ?></td>
<td id="vtitle">PSI</a></td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">Juice Temp:</a></td>
<td id="sum-count"><?php echo $value['45kJuiceTemp']; ?></td>
<td id="vtitle">F</a></td>
</tr>
<tr>
<td colspan="2" id="vtitle" id="padded">Brix:</a></td>
<td id="sum-count"><?php echo $value['45kBrix']; ?></td>
<td id="vtitle"></a></td>
</tr>
</table>
<table
class="col-4 boiler-panel-table"
border="1"
cellspacing="0"
cellpadding="4"
data-boiler-section="fab-3"
data-boiler-title="Shell & Heater"
>
<tr>
<td colspan="4" id="title">Shell & Heater Tubes</td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1" width="40%">Vapor 2:</a></td>
<td colspan="2" id="sum-count"><?php echo $rounded1['Vapor2']; ?></td>
<td id="vtitle">PSI</td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1" width="30%"></a></td>
<td id="vtitle" id="padded">Temp:</a></td>
<td id="vtitle" id="padded">SP:</a></td>
<td id="vtitle" id="padded">Valve OP:</a></td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1" width="40%">Heater 1:</a></td>
<td id="sum-count"><?php echo $value['Heater 1 Temp']; ?>&deg</td>
<td id="sum-count"><?php require "../includes/heatersp1.php";?>&deg</td>
<td id="sum-count"><?php echo $value['Heater1 OP']; ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1">Heater 2:</a></td>
<td id="sum-count"><?php echo $value['Heater 2 Temp']; ?>&deg</td>
<td id="sum-count"><?php require "../includes/heatersp2.php";?>&deg</td>
<td id="sum-count"><?php echo $value['Heater2 OP']; ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1">Heater 3:</a></td>
<td id="sum-count"><?php echo $value['Heater 3 Temp']; ?>&deg</td>
<td id="sum-count"><?php require "../includes/heatersp3.php";?>&deg</td>
<td id="sum-count"><?php echo $value['Heater3 OP']; ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1">Heater 4:</a></td>
<td id="sum-count"><?php echo $value['Heater 4 Temp']; ?>&deg</td>
<td id="sum-count"><?php require "../includes/heatersp4.php";?>&deg</td>
<td id="sum-count"><?php echo $value['Heater4 OP']; ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1">Heater 5:</a></td>
<td id="sum-count"><?php echo $value['Heater 5 Temp']; ?>&deg</td>
<td id="sum-count"><?php require "../includes/heatersp5.php";?>&deg</td>
<td id="sum-count"><?php echo $value['Heater5 OP']; ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1">Heater 6:</a></td>
<td id="sum-count"><?php echo $value['Heater 6 Temp']; ?>&deg</td>
<td id="sum-count"><?php require "../includes/heatersp6.php";?>&deg</td>
<td id="sum-count"><?php echo $value['Heater6 OP']; ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded" colspan="1">Heater 7:</a></td>
<td id="sum-count"><?php echo $value['Heater 7 Temp']; ?>&deg</td>
<td id="sum-count"><?php require "../includes/heatersp7.php";?>&deg</td>
<td id="sum-count"><?php echo $value['Heater7 OP']; ?>%</td>
</tr>
<tr>
<td id="vtitle" id="padded">Heater 8:</a></td>
<td id="sum-count"><?php echo $value['Heater 8 Temp']; ?>&deg</td>
<td id="sum-count"><?php require "../includes/heatersp8.php";?>&deg</td>
<td id="sum-count"><?php echo $value['Heater8 OP']; ?>%</td>
</tr>
</table>
<table
class="col-4 boiler-panel-table"
border="1"
cellspacing="0"
cellpadding="4"
data-boiler-section="fab-4"
data-boiler-title="Conductivity"
>
<tr>
<td colspan="4" id="title">Conductivity Meters</td>
</tr>
<tr>
<td id="vtitle" id="padded">45K</a></td>
<td id="sum-count"><?php echo $value['Conduct45K']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">A01:</a></td>
<td id="sum-count"><?php echo $value['ConductA01']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">A02:</a></td>
<td id="sum-count"><?php echo $value['ConductA02']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">B01:</a></td>
<td id="sum-count"><?php echo $value['ConductB01']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">B02:</a></td>
<td id="sum-count"><?php echo $value['ConductB02']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">C01:</a></td>
<td id="sum-count"><?php echo $value['ConductC01']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">C02:</a></td>
<td id="sum-count"><?php echo $value['ConductC02']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Pre1:</a></td>
<td id="sum-count"><?php echo $value['ConductPre1']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Pre2:</a></td>
<td id="sum-count"><?php echo $value['ConductPre2']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Pre3:</a></td>
<td id="sum-count"><?php echo $value['ConductPre3']; ?></td>
<td id="vtitle"></a></td>
</tr>
<tr>
<!--
<tr>
<td colspan="3" id="title">Broadbent</td>
</tr>
<tr>
<td id="vtitle" id="padded">Broadbent Run:</a></td>
<?php
if ($value['OnOff'] == 1) {
echo "<td colspan=2 id=\"dryerson\">RUNNING</td>";
}
if ($value['OnOff'] == 0) {
echo "<td colspan=2 id=\"dryersoff\">STOPPED</td>";
}
?>
</tr>
<tr>
<td id="vtitle" id="padded">Broadbent Tank Level:</a></td>
<td colspan="2"><progress id="progresstanks" data-label="<?php echo $value['BBTankLvl']; ?>%" max="100" value="<?php echo $value['BBTankLvl']; ?>"></progress></td>
</tr>
-->
</table>
<table
class="col-4 boiler-panel-table"
border="1"
cellspacing="0"
cellpadding="4"
data-boiler-section="fab-5"
data-boiler-title="Drums & Mud Belts"
>
<tr>
<td colspan="4" id="title">Drum Filters</td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Filter 1:</a></td>
<td id="sum-count"><?php //echo $value['DRUMFILTERONE']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Filter 1 Prev Day:</a></td>
<td id="sum-count"><?php //echo $value['Drum1PrevDay']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Filter 2:</a></td>
<td id="sum-count"><?php //echo $value['DRUMFILTERTWO']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Filter 2 Prev Day:</a></td>
<td id="sum-count"><?php //echo $value['Drum2PrevDay']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Filter 3:</a></td>
<td id="sum-count"><?php //echo $value['DRUMFILTERTHREE']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Drum Filter 3 Prev Day:</a></td>
<td id="sum-count"><?php //echo $value['Drum3PrevDay']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td colspan="3" id="title">Mud Belts</td>
</tr>
<tr>
<td id="vtitle" id="padded">Mud Belt 1 RPM:</a></td>
<td id="sum-count"><?php //echo $ID['00096']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Mud Belt 1 Water:</a></td>
<td id="sum-count"><?php echo $value['WATERFLOW1']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Mud Belt 2 RPM:</a></td>
<td id="sum-count"><?php //echo $ID['0000508']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Mud Belt 2 Water:</a></td>
<td id="sum-count"><?php echo $value['WATERFLOW2']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
</table>

View File

@@ -0,0 +1,53 @@
<?php
$serverName = "CBM2K12\SQLEXPRESS";
$uid = "cbmclient";
$pwd = "ascbm2k";
$connectionInfo = array( "UID"=>$uid, "PWD"=>$pwd,'ReturnDatesAsStrings'=> true, "CharacterSet" => 'utf-8', "Database"=>"SugarCaneScale" );
/* Connect using SQL Server Authentication. */
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false )
{
echo "Unable to connect.</br>";
die( print_r( sqlsrv_errors(), true));
}
$sql = "SELECT * FROM LoadData WHERE CropDay = ( SELECT Max(CropDay) FROM LoadData) AND TestNeeded = 1 ORDER by LoadId_Pk DESC";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
?>
<style type="text/css">
.tftable1 {font-family:sans-serif;font-size:12px;color:#fbfbfb;width:100%;border-width: 1px;border-color: #686767;border-collapse: collapse;empty-cells: hide;}
.tftable1 th {font-family:arial;font-size:20px;background-color:#000000;border-width: 1px;padding: 8px;border-style: solid;border-color: #000000;text-align:left;}
.tftable1 tr {background-color:#000000;}
.tftable1 td {font-family:sans-serif;font-size:15px;font-weight:bold;border-width: 2px;padding: 3px;border-style: solid;border-color: #686767;}
</style>
<table class="tftable1">
<table class="tftable1" width="100%">
<thead>
<tr>
<th>Load Numbers</th>
</tr>
</thead>
<?php
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) )
{
echo "<tr>";
echo"<td>".$row['LoadId_Pk']."</td>";
echo "</tr>";
}
//end
?>
</table>
<?
$db = null;
?>

View File

@@ -0,0 +1,171 @@
<?php // phpcs:ignoreFile
require __DIR__ . '/../includes/db.php';
$appTimeZone = new DateTimeZone('America/Chicago');
$errorMessage = null;
$devices = [];
try {
$connection = controls_db_connect();
} catch (Throwable $exception) {
$connection = null;
$errorMessage = $exception->getMessage();
}
if ($connection instanceof mysqli) {
$sql = <<<SQL
SELECT d.id,
d.host,
d.label,
latest.status,
latest.latency_ms,
latest.checked_at
FROM monitoring_devices AS d
LEFT JOIN (
SELECT l1.device_id,
l1.status,
l1.latency_ms,
l1.checked_at
FROM monitoring_latency_log AS l1
INNER JOIN (
SELECT device_id, MAX(checked_at) AS max_checked
FROM monitoring_latency_log
GROUP BY device_id
) AS recent ON recent.device_id = l1.device_id AND recent.max_checked = l1.checked_at
) AS latest ON latest.device_id = d.id
WHERE d.is_active = 1
ORDER BY d.label;
SQL;
try {
$result = $connection->query($sql);
if ($result instanceof mysqli_result) {
while ($row = $result->fetch_assoc()) {
if (!empty($row['checked_at'])) {
$timestamp = DateTimeImmutable::createFromFormat(
'Y-m-d H:i:s',
$row['checked_at'],
new DateTimeZone('UTC')
);
if ($timestamp instanceof DateTimeImmutable) {
$timestamp = $timestamp->setTimezone($appTimeZone);
$row['checked_at_formatted'] = $timestamp->format('M j, Y g:i:s A T');
}
}
$devices[] = $row;
}
$result->free();
}
} catch (Throwable $exception) {
$errorMessage = $exception->getMessage();
} finally {
$connection->close();
}
}
ob_start();
?>
<header class="panel-header">
<h2>Device latency status</h2>
<p>Latest response times collected by the latency watcher service.</p>
</header>
<?php if (!empty($errorMessage ?? null)) : ?>
<div class="panel-error">
<strong>Unable to load data:</strong>
<span><?php echo htmlspecialchars($errorMessage); ?></span>
</div>
<?php elseif (empty($devices)) : ?>
<div class="panel-loading">
<span>No latency samples have been recorded yet.</span>
<span>Verify the watcher is running and devices are configured.</span>
</div>
<?php else : ?>
<div class="latency-table-wrapper">
<table class="latency-table">
<thead>
<tr>
<th scope="col">Device</th>
<th scope="col">Host</th>
<th scope="col">Status</th>
<th scope="col">Latency (ms)</th>
<th scope="col">Last checked</th>
</tr>
</thead>
<tbody>
<?php foreach ($devices as $device) : ?>
<?php
$status = $device['status'] ?? null;
$latency = $device['latency_ms'] ?? null;
$statusLabel = 'Unknown';
$statusClass = 'status-pill--unknown';
$trendUrl = 'trends/live/autochart.php?'
. http_build_query([
'primary' => 'latency:' . $device['id'],
'primary_label' => $device['label'],
'autostart' => '1',
'interval' => '5000',
]);
if ($status === 'up') {
$statusLabel = 'Online';
$statusClass = 'status-pill--up';
} elseif ($status === 'down') {
$statusLabel = 'Offline';
$statusClass = 'status-pill--down';
}
?>
<tr>
<td data-label="Device">
<a class="latency-link" href="<?php echo htmlspecialchars($trendUrl, ENT_QUOTES, 'UTF-8'); ?>" target="_blank" rel="noopener">
<?php echo htmlspecialchars($device['label']); ?>
</a>
</td>
<td data-label="Host"><?php echo htmlspecialchars($device['host']); ?></td>
<td data-label="Status">
<span class="status-pill <?php echo $statusClass; ?>">
<?php echo htmlspecialchars($statusLabel); ?>
</span>
</td>
<td data-label="Latency">
<?php echo $latency !== null ? number_format((float) $latency, 0) : '—'; ?>
</td>
<td data-label="Last checked">
<?php echo htmlspecialchars($device['checked_at_formatted'] ?? '—'); ?>
</td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
</div>
<?php endif; ?>
<footer class="latency-footnote">
<p>
Results update whenever <code>monitoring/latency_watcher.py</code> records a sample.
Configure devices in the <code>monitoring_devices</code> table and ensure the watcher
has database access.
</p>
</footer>
<?php
$payload = ob_get_clean();
$etag = '"' . md5($payload) . '"';
$clientEtag = isset($_SERVER['HTTP_IF_NONE_MATCH']) ? trim($_SERVER['HTTP_IF_NONE_MATCH']) : null;
if ($clientEtag && $clientEtag === $etag) {
header('HTTP/1.1 304 Not Modified');
header('Cache-Control: no-cache, must-revalidate');
header('ETag: ' . $etag);
exit;
}
header('Cache-Control: no-cache, must-revalidate');
header('Content-Type: text/html; charset=utf-8');
header('ETag: ' . $etag);
echo $payload;

View File

@@ -0,0 +1,649 @@
<?php // phpcs:ignoreFile
/**
* Mill Data Viewer - Simple PHP interface for viewing extracted mill production data
*
* Requirements:
* - PHP 7.4+ with sqlsrv extension
* - SQL Server with MillDataReports and MillDataMetrics tables
*
* Usage:
* 1. Configure database connection below
* 2. Place in web server directory
* 3. Access via browser: http://localhost/milldata_viewer.php
*/
// ============================================================================
// Database Configuration
// ============================================================================
$config = [
'server' => '192.168.0.16',
'database' => 'lasucaai',
'username' => 'lasucaai',
'password' => 'is413#dfslw',
];
// ============================================================================
// Database Connection
// ============================================================================
function getConnection($config) {
$connectionOptions = [
"Database" => $config['database'],
"Uid" => $config['username'],
"PWD" => $config['password'],
"TrustServerCertificate" => true,
"Encrypt" => false,
];
$conn = sqlsrv_connect($config['server'], $connectionOptions);
if ($conn === false) {
die("Connection failed: " . print_r(sqlsrv_errors(), true));
}
return $conn;
}
// ============================================================================
// Data Queries
// ============================================================================
function getSourceFiles($conn) {
$sql = "SELECT DISTINCT SourceFileName,
MIN(BeginningDate) as BeginningDate,
MAX(EndingDate) as EndingDate,
MAX(ProcessedAt) as ProcessedAt
FROM dbo.MillDataReports
GROUP BY SourceFileName
ORDER BY MAX(ProcessedAt) DESC";
$stmt = sqlsrv_query($conn, $sql);
$files = [];
while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) {
$files[] = $row;
}
return $files;
}
function getMillsForFile($conn, $sourceFileName) {
$sql = "SELECT ReportId, MillName
FROM dbo.MillDataReports
WHERE SourceFileName = ?
ORDER BY MillName";
$stmt = sqlsrv_query($conn, $sql, [$sourceFileName]);
if ($stmt === false) {
return [];
}
$mills = [];
while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) {
$mills[] = $row;
}
return $mills;
}
function getReports($conn) {
$sql = "SELECT ReportId, SourceFileName, MillName, ReportTitle,
BeginningDate, EndingDate, CropDays, ProcessedAt
FROM dbo.MillDataReports
ORDER BY ProcessedAt DESC";
$stmt = sqlsrv_query($conn, $sql);
$reports = [];
while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) {
$reports[] = $row;
}
return $reports;
}
function getMetrics($conn, $reportId, $search = '', $category = '') {
$params = [$reportId];
$sql = "SELECT MetricId, ItemNumber, MetricName, RunValue, RunValueNumeric,
ToDateValue, ToDateValueNumeric, Unit, Category
FROM dbo.MillDataMetrics
WHERE ReportId = ?";
if (!empty($search)) {
$sql .= " AND MetricName LIKE ?";
$params[] = '%' . $search . '%';
}
if (!empty($category)) {
$sql .= " AND Category = ?";
$params[] = $category;
}
$sql .= " ORDER BY MetricId";
$stmt = sqlsrv_query($conn, $sql, $params);
$metrics = [];
while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) {
$metrics[] = $row;
}
return $metrics;
}
function getCategories($conn) {
$sql = "SELECT DISTINCT Category FROM dbo.MillDataMetrics WHERE Category IS NOT NULL ORDER BY Category";
$stmt = sqlsrv_query($conn, $sql);
$categories = [];
while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) {
$categories[] = $row['Category'];
}
return $categories;
}
function getReportStats($conn) {
$sql = "SELECT
COUNT(DISTINCT r.ReportId) as TotalReports,
COUNT(m.MetricId) as TotalMetrics,
MIN(r.BeginningDate) as EarliestDate,
MAX(r.EndingDate) as LatestDate
FROM dbo.MillDataReports r
LEFT JOIN dbo.MillDataMetrics m ON r.ReportId = m.ReportId";
$stmt = sqlsrv_query($conn, $sql);
return sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC);
}
// ============================================================================
// Main Logic
// ============================================================================
$conn = getConnection($config);
$selectedFile = isset($_GET['file']) ? trim($_GET['file']) : '';
$selectedReportId = isset($_GET['report']) ? intval($_GET['report']) : 0;
$searchTerm = isset($_GET['search']) ? trim($_GET['search']) : '';
$selectedCategory = isset($_GET['category']) ? trim($_GET['category']) : '';
$sourceFiles = getSourceFiles($conn);
$categories = getCategories($conn);
$stats = getReportStats($conn);
// Default to first file if none selected
if (empty($selectedFile) && !empty($sourceFiles)) {
$selectedFile = $sourceFiles[0]['SourceFileName'];
}
// Get mills for selected file
$millsForFile = !empty($selectedFile) ? getMillsForFile($conn, $selectedFile) : [];
// Default to first mill if no report selected
if ($selectedReportId === 0 && !empty($millsForFile)) {
$selectedReportId = $millsForFile[0]['ReportId'];
}
// Validate report belongs to selected file
$validReport = false;
foreach ($millsForFile as $m) {
if ($m['ReportId'] == $selectedReportId) {
$validReport = true;
break;
}
}
if (!$validReport && !empty($millsForFile)) {
$selectedReportId = $millsForFile[0]['ReportId'];
}
$reports = getReports($conn);
$metrics = $selectedReportId ? getMetrics($conn, $selectedReportId, $searchTerm, $selectedCategory) : [];
// Find selected report details
$selectedReport = null;
foreach ($reports as $r) {
if ($r['ReportId'] == $selectedReportId) {
$selectedReport = $r;
break;
}
}
// Find selected file details
$selectedFileInfo = null;
foreach ($sourceFiles as $f) {
if ($f['SourceFileName'] == $selectedFile) {
$selectedFileInfo = $f;
break;
}
}
sqlsrv_close($conn);
// Format date helper
function formatDate($date) {
if ($date instanceof DateTime) {
return $date->format('m/d/Y');
}
return $date ?? '-';
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Mill Data Viewer</title>
<style>
* {
box-sizing: border-box;
margin: 0;
padding: 0;
}
body {
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif;
background: #f5f5f5;
color: #333;
line-height: 1.6;
}
.container {
max-width: 1400px;
margin: 0 auto;
padding: 20px;
}
header {
background: linear-gradient(135deg, #2c5530 0%, #4a7c50 100%);
color: white;
padding: 20px;
margin-bottom: 20px;
border-radius: 8px;
box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}
header h1 {
font-size: 1.8rem;
margin-bottom: 5px;
}
header p {
opacity: 0.9;
font-size: 0.95rem;
}
.stats {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
gap: 15px;
margin-bottom: 20px;
}
.stat-card {
background: white;
padding: 15px;
border-radius: 8px;
box-shadow: 0 1px 3px rgba(0,0,0,0.1);
text-align: center;
}
.stat-card .value {
font-size: 1.8rem;
font-weight: bold;
color: #2c5530;
}
.stat-card .label {
font-size: 0.85rem;
color: #666;
}
.layout {
display: grid;
grid-template-columns: 300px 1fr;
gap: 20px;
}
@media (max-width: 900px) {
.layout {
grid-template-columns: 1fr;
}
}
.sidebar {
background: white;
border-radius: 8px;
padding: 15px;
box-shadow: 0 1px 3px rgba(0,0,0,0.1);
height: fit-content;
}
.sidebar h2 {
font-size: 1rem;
color: #666;
margin-bottom: 10px;
text-transform: uppercase;
letter-spacing: 0.5px;
}
.report-list {
list-style: none;
}
.report-list li {
margin-bottom: 8px;
}
.report-list a {
display: block;
padding: 10px 12px;
background: #f8f8f8;
border-radius: 6px;
text-decoration: none;
color: #333;
transition: all 0.2s;
border-left: 3px solid transparent;
}
.report-list a:hover {
background: #e8f5e9;
border-left-color: #4a7c50;
}
.report-list a.active {
background: #e8f5e9;
border-left-color: #2c5530;
font-weight: 500;
}
.report-list .date {
font-size: 0.8rem;
color: #888;
}
.main-content {
background: white;
border-radius: 8px;
padding: 20px;
box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
.report-header {
margin-bottom: 20px;
padding-bottom: 15px;
border-bottom: 1px solid #eee;
}
.report-header h2 {
color: #2c5530;
margin-bottom: 5px;
}
.report-meta {
display: flex;
gap: 20px;
flex-wrap: wrap;
font-size: 0.9rem;
color: #666;
}
.filters {
display: flex;
gap: 10px;
margin-bottom: 20px;
flex-wrap: wrap;
}
.filters input, .filters select {
padding: 8px 12px;
border: 1px solid #ddd;
border-radius: 6px;
font-size: 0.9rem;
}
.filters input {
flex: 1;
min-width: 200px;
}
.filters button {
padding: 8px 20px;
background: #2c5530;
color: white;
border: none;
border-radius: 6px;
cursor: pointer;
font-size: 0.9rem;
}
.filters button:hover {
background: #4a7c50;
}
table {
width: 100%;
border-collapse: collapse;
font-size: 0.9rem;
}
th {
background: #f8f8f8;
padding: 12px 10px;
text-align: left;
font-weight: 600;
color: #555;
border-bottom: 2px solid #ddd;
position: sticky;
top: 0;
}
td {
padding: 10px;
border-bottom: 1px solid #eee;
}
tr:hover {
background: #fafafa;
}
.item-num {
font-weight: 600;
color: #2c5530;
white-space: nowrap;
}
.metric-name {
max-width: 300px;
}
.value-cell {
text-align: right;
font-family: 'Consolas', 'Monaco', monospace;
white-space: nowrap;
}
.value-cell.positive {
color: #2e7d32;
}
.value-cell.negative {
color: #c62828;
}
.category-badge {
display: inline-block;
padding: 2px 8px;
background: #e8f5e9;
color: #2c5530;
border-radius: 12px;
font-size: 0.75rem;
white-space: nowrap;
}
.no-data {
text-align: center;
padding: 40px;
color: #888;
}
.table-container {
max-height: 600px;
overflow-y: auto;
}
.results-count {
font-size: 0.85rem;
color: #666;
margin-bottom: 10px;
}
</style>
</head>
<body>
<div class="container">
<header>
<h1>🏭 Mill Data Viewer</h1>
<p>Sugar Mill Production Report Data</p>
</header>
<div class="stats">
<div class="stat-card">
<div class="value"><?= $stats['TotalReports'] ?? 0 ?></div>
<div class="label">Reports</div>
</div>
<div class="stat-card">
<div class="value"><?= number_format($stats['TotalMetrics'] ?? 0) ?></div>
<div class="label">Metrics</div>
</div>
<div class="stat-card">
<div class="value"><?= formatDate($stats['EarliestDate']) ?></div>
<div class="label">Earliest</div>
</div>
<div class="stat-card">
<div class="value"><?= formatDate($stats['LatestDate']) ?></div>
<div class="label">Latest</div>
</div>
</div>
<div class="layout">
<aside class="sidebar">
<h2>Reports</h2>
<ul class="report-list">
<?php foreach ($sourceFiles as $file): ?>
<li>
<a href="?file=<?= urlencode($file['SourceFileName']) ?>"
class="<?= $file['SourceFileName'] == $selectedFile ? 'active' : '' ?>">
<?= htmlspecialchars($file['SourceFileName']) ?>
<div class="date">
<?= formatDate($file['BeginningDate']) ?> - <?= formatDate($file['EndingDate']) ?>
</div>
</a>
</li>
<?php endforeach; ?>
<?php if (empty($sourceFiles)): ?>
<li class="no-data">No reports found</li>
<?php endif; ?>
</ul>
</aside>
<main class="main-content">
<?php if ($selectedReport): ?>
<div class="report-header">
<h2><?= htmlspecialchars($selectedReport['ReportTitle'] ?? $selectedReport['SourceFileName']) ?></h2>
<div class="report-meta">
<span>📅 <?= formatDate($selectedReport['BeginningDate']) ?> - <?= formatDate($selectedReport['EndingDate']) ?></span>
<span>📊 <?= $selectedReport['CropDays'] ?? '-' ?> crop days</span>
<span>🏭
<select onchange="window.location.href='?file=<?= urlencode($selectedFile) ?>&report='+this.value" style="padding: 4px 8px; border-radius: 4px; border: 1px solid #ccc;">
<?php foreach ($millsForFile as $mill):
// Display "State Average" for STATE_AVG mill
$displayName = $mill['MillName'];
if ($displayName === 'Mill STATE_AVG') {
$displayName = 'State Average';
}
?>
<option value="<?= $mill['ReportId'] ?>" <?= $mill['ReportId'] == $selectedReportId ? 'selected' : '' ?>>
<?= htmlspecialchars($displayName) ?>
</option>
<?php endforeach; ?>
</select>
</span>
</div>
</div>
<form class="filters" method="get">
<input type="hidden" name="file" value="<?= htmlspecialchars($selectedFile) ?>">
<input type="hidden" name="report" value="<?= $selectedReportId ?>">
<input type="text" name="search" placeholder="Search metrics..."
value="<?= htmlspecialchars($searchTerm) ?>">
<select name="category">
<option value="">All Categories</option>
<?php foreach ($categories as $cat): ?>
<option value="<?= htmlspecialchars($cat) ?>"
<?= $cat === $selectedCategory ? 'selected' : '' ?>>
<?= htmlspecialchars($cat) ?>
</option>
<?php endforeach; ?>
</select>
<button type="submit">Filter</button>
<?php if ($searchTerm || $selectedCategory): ?>
<a href="?report=<?= $selectedReportId ?>" style="padding: 8px; color: #666;">Clear</a>
<?php endif; ?>
</form>
<div class="results-count">
Showing <?= count($metrics) ?> metrics
<?php if ($searchTerm): ?>
matching "<?= htmlspecialchars($searchTerm) ?>"
<?php endif; ?>
</div>
<div class="table-container">
<table>
<thead>
<tr>
<th>Item</th>
<th>Metric</th>
<th>RUN</th>
<th>TO DATE</th>
<th>Category</th>
</tr>
</thead>
<tbody>
<?php foreach ($metrics as $m): ?>
<tr>
<td class="item-num"><?= htmlspecialchars($m['ItemNumber'] ?? '') ?></td>
<td class="metric-name"><?= htmlspecialchars($m['MetricName'] ?? '') ?></td>
<td class="value-cell <?= ($m['RunValueNumeric'] ?? 0) < 0 ? 'negative' : '' ?>">
<?= htmlspecialchars($m['RunValue'] ?? '') ?>
</td>
<td class="value-cell <?= ($m['ToDateValueNumeric'] ?? 0) < 0 ? 'negative' : '' ?>">
<?= htmlspecialchars($m['ToDateValue'] ?? '') ?>
</td>
<td>
<?php if ($m['Category']): ?>
<span class="category-badge"><?= htmlspecialchars($m['Category']) ?></span>
<?php endif; ?>
</td>
</tr>
<?php endforeach; ?>
<?php if (empty($metrics)): ?>
<tr>
<td colspan="5" class="no-data">No metrics found</td>
</tr>
<?php endif; ?>
</tbody>
</table>
</div>
<?php else: ?>
<div class="no-data">
<p>Select a report from the sidebar to view metrics</p>
</div>
<?php endif; ?>
</main>
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,681 @@
<?php
// phpcs:ignoreFile
date_default_timezone_set('America/Chicago');
$curDate = date('l, M j, Y h:i:s a');
$configuredBaseUrl = getenv('LASUCA_FEED_URL');
$roundedid = [];
$rounded = [];
$rounded1 = [];
$ID = [];
$value = [];
$endpointDataLoaded = false;
$endpointErrorMessage = null;
try {
if ($configuredBaseUrl !== false && $configuredBaseUrl !== '') {
$baseUrl = rtrim($configuredBaseUrl, '/');
} else {
$baseUrl = 'https://192.168.0.10';
}
$endpointUrl = rtrim($baseUrl, '/') . '/shared-endpoint/public/index.php';
$scheme = parse_url($endpointUrl, PHP_URL_SCHEME) ?: 'http';
$context = null;
if (strcasecmp($scheme, 'https') === 0) {
$host = parse_url($endpointUrl, PHP_URL_HOST) ?: 'localhost';
if (in_array($host, ['localhost', '127.0.0.1', '192.168.0.10'], true)) {
$context = stream_context_create([
'ssl' => [
'verify_peer' => false,
'verify_peer_name' => false,
],
]);
}
}
$response = @file_get_contents($endpointUrl, false, $context ?: null);
if ($response === false && strcasecmp($scheme, 'https') === 0) {
$fallbackUrl = preg_replace('#^https#i', 'http', $endpointUrl);
$response = @file_get_contents($fallbackUrl);
if ($response !== false) {
$endpointUrl = $fallbackUrl;
}
}
if ($response === false) {
throw new RuntimeException('Unable to reach shared endpoint: ' . $endpointUrl);
}
try {
$payload = json_decode($response, true, flags: JSON_THROW_ON_ERROR);
} catch (JsonException $exception) {
throw new RuntimeException('Malformed JSON from shared endpoint', 0, $exception);
}
if (($payload['status'] ?? null) !== 'ok') {
$message = $payload['message'] ?? 'unknown error';
throw new RuntimeException('Shared endpoint returned an error: ' . $message);
}
if (!isset($payload['items']) || !is_array($payload['items'])) {
$snippet = substr(strip_tags($response), 0, 200);
throw new RuntimeException('Shared endpoint response missing items. Snippet: ' . $snippet);
}
foreach ($payload['items'] as $item) {
$tagKey = str_pad((string) $item['tagId'], 5, '0', STR_PAD_LEFT);
$value[$item['name']] = $item['value'];
$rounded[$item['name']] = $item['rounded1'];
$rounded1[$item['name']] = $item['rounded2'];
$roundedid[$tagKey] = $item['rounded2'];
$ID[$tagKey] = $item['value'];
}
$endpointDataLoaded = true;
} catch (Throwable $exception) {
$endpointErrorMessage = $exception->getMessage();
error_log('Milling shared endpoint failed: ' . $endpointErrorMessage);
}
$dataSourceLabel = 'Shared endpoint';
if (!$endpointDataLoaded) {
require __DIR__ . '/../items.php';
require __DIR__ . '/../items2dec.php';
$dataSourceLabel = 'Legacy items.php data';
}
$formatValue = static function (string $key) use (&$value): string {
return number_format((float)($value[$key] ?? 0), 0, '.', '');
};
$formatNumber = static function ($number): string {
return number_format((float)$number, 0, '.', '');
};
$roundNumber = static function ($number): string {
return (string) round((float)$number);
};
$unixtime=time();
$unix5am=mktime(5, 00, 00);
if ($unixtime<=$unix5am) {
$unixtime += 86400;
}
$since5am=($unixtime-$unix5am)/3600;
$avgtonstoday=round($value['W TONS GROUND']/$since5am*24, 0);
ob_start();
?>
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<tr >
<td colspan="4" id="datetime">
<?php echo $curDate; ?>
</td>
</tr>
<?php require __DIR__ . '/../includes/alerts.php'; ?>
<tr class="milling-alt-row">
<td id="vtitle" colspan="4">
Data source: <?php echo htmlspecialchars($dataSourceLabel, ENT_QUOTES, 'UTF-8'); ?>
<?php if ($endpointErrorMessage !== null) : ?>
<br><small class="text-muted">Endpoint error: <?php echo htmlspecialchars($endpointErrorMessage, ENT_QUOTES, 'UTF-8'); ?></small>
<?php endif; ?>
</td>
</tr>
<tr>
<td colspan="4" id="title">Steam</td>
</tr>
<tr>
<td id="vtitle" >Exhaust Pressure:</a></td>
<td colspan="2" id="sum-count"><?php echo $roundedid['00302']; ?></td>
<td id="vtitle">PSI</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Live Steam Pressure:</a></td>
<td colspan="2" id="sum-count"><?php echo $rounded['PT_001']; ?></td>
<td colspan="2" id="vtitle">PSI</a></td>
</tr>
<tr>
<td colspan="4" id="title">Tank Levels</td>
</tr>
<tr>
<td id="vtitle" >Juice Tank 1 Level:</td>
<td colspan="3" ><progress id="progresstanks" data-label="<?php echo $roundNumber($value['Juice Tank1'] ?? 0); ?>%" max="100" value="<?php echo $roundNumber($value['Juice Tank1'] ?? 0); ?>"></progress></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Juice Tank 2 Level:</td>
<td colspan="3" align="left"><progress id="progresstanks" data-label="<?php echo $roundNumber($value['Juice Tank2'] ?? 0); ?>%" max="100" value="<?php echo $roundNumber($value['Juice Tank2'] ?? 0); ?>"></progress></td
</tr>
<tr>
<td id="vtitle" id="padded">Total Syrup:</a></td>
<td colspan="3"><progress id="progresstanks" data-label="<?php echo round(($value['Syrup Overflow Lvl']*.82569)+($value['Syrup RCVR']*.17431), 0); ?>%" max="100" value="<?php echo round(($value['Syrup Overflow Lvl']*.82569)+($value['Syrup RCVR']*.17431), 0); ?>"></meter></td>
<!--
</tr>
<td colspan="4" id="title">YTD Grinding Info</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">Total <font size="" color="0eb31d"><b><?php require "../includes/milltotal.php";?></b></font> Tons Ground</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">East Mills <font size="" color="0eb31d"><b><?php require "../includes/easttotal.php";?></b></font> Tons Ground</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">West Mills <font size="" color="0eb31d"><b><?php require "../includes/westtotal.php";?></b></font> Tons Ground</td>
</tr>
-->
<tr>
<td colspan="4" id="title">Daily Grinding Totals</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">Record Of <font size="" color="0eb31d"><b><?php require "../includes/record.php";?></b></font> Tons On <font size="" color="0eb31d"><b><?php require "../includes/recorddate.php";?></b></font></td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">Total Of <font size="" color="0eb31d"><b><?php echo $formatNumber(($value['PREVTONS'] ?? 0) + ($value['WPREVGROUND'] ?? 0)); ?></b></font> Tons Ground Yesterday</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">Total Of <font size="" color="0eb31d"><b><?php echo $formatNumber(($value['CANETOT'] ?? 0) + ($value['W TONS GROUND'] ?? 0)); ?></b></font> Tons Ground</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">Total Of <font size="" color="0eb31d"><b><?php require "../includes/millprojected60min.php";?></b></font> Tons Projected</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">Total Rate Of <font size="" color="0eb31d"><b><?php require "../includes/stablerate30.php";?></b></font> Tons/HR</td>
</tr>
<tr>
<tr class="milling-alt-row">
<td id="vtitle" ></td>
<td id="sum-count">East</td>
<td id="sum-count">West</td>
<td id="vtitle"></td>
</tr>
<tr>
<td id="vtitle" >Tons Per Hour:</a></td>
<td id="sum-count"><?php echo $ID['00560']; ?></td>
<td id="sum-count"><?php echo $formatValue('RATE'); ?></td>
<td id="vtitle">Tons/Hr</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Avg Tons Per Hour:</a></td>
<td id="sum-count"><?php require "../includes/east15minavg.php";?></td>
<td id="sum-count"><?php require "../includes/west15minavg.php";?></td>
<td id="vtitle">Tons/15</a></td>
</tr>
<tr>
<td id="vtitle" >Tons Ground:</a></td>
<td id="sum-count"><?php echo $formatValue('CANETOT'); ?></td>
<td id="sum-count"><?php echo $formatValue('W TONS GROUND'); ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >AVG TCD:</a></td>
<td id="sum-count"><?php echo $formatValue('AVGTCD'); ?></td>
<td id="sum-count"><?php echo $formatNumber($avgtonstoday); ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td id="vtitle" >Run Hours Today:</a></td>
<td id="sum-count"><?php echo $rounded['RUNHRSTODAY']; ?></td>
<td id="sum-count"><?php echo number_format(($value['todayrun'] ?? 0) / 10, 1) + .1; ?></td>
<td id="vtitle">Hours</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Loss Time Today:</a></td>
<td id="sum-count"><?php echo $rounded['LOSSTIME']; ?></td>
<td id="sum-count"><?php echo number_format(($value['todayloss'] ?? 0) / 10, 1); ?></td>
<td id="vtitle">Hours</a></td>
</tr>
<tr>
<td id="vtitle" >Previous Day TCD:</a></td>
<td id="sum-count"><?php echo $formatValue('PREVTONS'); ?></td>
<td id="sum-count"><?php echo $formatValue('WPREVGROUND'); ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Previous Day Run Hours:</a></td>
<td id="sum-count"><?php echo $formatValue('PREVTIME'); ?></td>
<td id="sum-count"><?php echo number_format(24 - (($value['prevloss'] ?? 0) / 10), 1); ?></td>
<td id="vtitle">Hours</a></td>
</tr>
<tr>
<td id="vtitle" >Previous Day PPH/Ton:</a></td>
<td id="sum-count"><?php echo $formatValue('LBSPERHR'); ?></td>
<td id="sum-count"> </td>
<td id="vtitle">PPH/Ton</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Previous Day IMB 5:</a></td>
<td id="sum-count"><?php echo round($value['EIMB5PrevDay'] * 8.34 / 2000); ?></td>
<td id="sum-count"> </td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td id="vtitle" >Previous Day IMB 6:</a></td>
<td id="sum-count"><?php echo round($value['EIMB6PrevDay'] * 8.34 / 2000); ?></td>
<td id="sum-count"> </td>
<td id="vtitle">Tons</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Imibition 5 Flow:</a></td>
<td id="sum-count"><?php echo $formatValue('IMB5Flow'); ?></td>
<td id="sum-count"><?php echo $formatValue('WMillIMBFlow'); ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" >Imibition 5 Total:</a></td>
<td id="sum-count"><?php echo $formatValue('IMB5TOT'); ?></td>
<td id="sum-count"></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Imibition 6 Flow:</a></td>
<td id="sum-count"><?php echo $formatValue('IMB6Flow'); ?></td>
<td id="sum-count"> </td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" >Imibition 6 Total:</a></td>
<td id="sum-count"><?php echo $formatValue('IMB6TOT'); ?></td>
<td id="sum-count"></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Imibition 5 SP:</a></td>
<td id="sum-count"><?php echo $ID['00164']; ?></td>
<td id="sum-count"><?php echo $formatValue('WMillIMBSP'); ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" >Imibition 6 SP:</a></td>
<td id="sum-count"><?php echo $formatValue('IMB6SP'); ?></td>
<td id="sum-count"> </td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td colspan="4" id="title">Main Carrier</td>
</tr>
<tr>
<td id="vtitle" ></td>
<td id="sum-count">East</td>
<td id="sum-count">West</td>
<td id="vtitle"></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >MCC/BC-09 FPM:</a></td>
<td id="sum-count"><?php echo $formatValue('MAINSPD'); ?></td>
<td id="sum-count"><?php echo $formatValue('Feet/Minute'); ?></td>
<td id="vtitle">FPM</a></td>
</tr>
<tr>
<td id="vtitle" >MCC Output:</a></td>
<td id="sum-count"><?php echo $formatValue('MCCOUTPUT'); ?></td>
<td id="sum-count"><?php echo $formatValue('Output'); ?></td>
<td id="vtitle">%</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >MCC Tons:</a></td>
<td id="sum-count"><?php echo $rounded1['MCCTONS']; ?></td>
<td id="sum-count"> </td>
<td id="vtitle">Tons</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >TD Ratios:</a></td>
<td id="sum-count"><?php echo $rounded1['ETDApronRatio']; ?></td>
<td id="sum-count"><?php echo $rounded1['WTDApronRatio']; ?></td>
<td id="vtitle">%</a></td>
</tr>
<tr>
<td colspan="4" id="title">Mill 1</td>
</tr>
<tr>
<td id="vtitle" >Chute Level:</a></td>
<td id="sum-count"><?php echo $ID['00350']; ?></td>
<td id="sum-count"><?php echo $ID['00914']; ?></td>
<td id="vtitle">%</a></td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</a></td>
<td id="sum-count"><?php echo $formatValue('MILL1PRES'); ?></td>
<td id="vtitle">PSI</a></td>
</tr>
-->
<tr class="milling-alt-row">
<td id="vtitle" >Turbin Speed:</a></td>
<td id="sum-count"><?php echo $formatValue('EMILL1RPM'); ?></td>
<td id="sum-count"><?php echo $ID['00926']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" >Turbin Output:</a></td>
<td id="sum-count"><?php echo $formatValue('MILL1OUTPUT'); ?></td>
<td id="sum-count"> </td>
<td id="vtitle">%</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Set Point East:</td>
<?php
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 1) {
echo '<td colspan="2" id="sum-count" >' . $formatValue('WEIGHT_WSP') . '</font></td>';
}
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 0) {
echo '<td colspan="2" id="sum-count">' . $formatValue('MILL1WSP') . '</font></td>';
}
?>
<?php
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 1) {
echo "<td id=\"vtitle\">Tons/Hr</font></td>";
}
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 0) {
echo "<td id=\"vtitle\">%</font></td>";
}
?>
</tr><tr>
<td id="vtitle" >Set Point West:</td>
<?php
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 1) {
echo '<td colspan="2" id="sum-count" > </font></td>';
}
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 0) {
echo '<td colspan="2" id="sum-count"> </font></td>';
}
?>
<?php
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 1) {
echo "<td id=\"vtitle\">Tons/Hr</font></td>";
}
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 0) {
echo "<td id=\"vtitle\">%</font></td>";
}
?>
</tr>
<tr>
<?php
if ($value['MILL1AUTOMAN1'] == 1) {
echo "<td colspan=\"4\" id=\"gopen\">Auto</td>";
}
if ($value['MILL1AUTOMAN1'] == 0) {
echo "<td colspan=\"4\" id=\"gclose\">Manual</td>";
}
?>
</tr>
<tr>
<td colspan="4" id="title">Mill 2</td>
</tr>
<tr>
<td id="vtitle" ></td>
<td id="sum-count">East</td>
<td id="sum-count">West</td>
<td id="vtitle"></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Chute Level:</td>
<td id="sum-count"><?php echo $formatValue('M2LVL'); ?></td>
<td id="sum-count"><?php echo $ID['00916']; ?></td>
<td id="vtitle">%</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $formatValue('MIL2PRES'); ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $formatValue('EMILL2RPM'); ?></td>
<td id="sum-count"><?php echo $ID['00930']; ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td colspan="4" id="title">Mill 3</td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Chute Level:</td>
<td id="sum-count"><?php echo $formatValue('MIL3LVL'); ?></td>
<td id="sum-count"><?php echo $ID['01020']; ?></td>
<td id="vtitle">%</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $formatValue('MIL3PRES'); ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $formatValue('EMILL3RPM'); ?></td>
<td id="sum-count"><?php echo $formatValue('W3RPM'); ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td colspan="4" id="title">Mill 4</td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Chute Level:</td>
<td id="sum-count"><?php echo $formatValue('MIL4LVL'); ?></td>
<td id="sum-count"><?php echo $ID['00918']; ?></td>
<td id="vtitle">%</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $formatValue('MIL4PRES'); ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $formatValue('EMILL4RPM'); ?></td>
<td id="sum-count"><?php echo $ID['00934']; ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td colspan="4" id="title">Mill 5</td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Chute Level:</td>
<td id="sum-count"><?php echo $formatValue('MIL5LVL'); ?></td>
<td id="sum-count"><?php echo $ID['00920']; ?></td>
<td id="vtitle">%</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $formatValue('MIL5PRES'); ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $formatValue('EMILL5RPM'); ?></td>
<td id="sum-count"><?php echo $ID['00940']; ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td colspan="4" id="title">Mill 6</td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Chute Level:</td>
<td colspan="2" id="sum-count"><?php echo $value['MIL6LVL']; ?></td>
<td id="vtitle">%</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $value['MIL6PRES']; ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td colspan="2" id="sum-count"><?php echo $value['EMILL6RPM']; ?></td>
<td id="vtitle">RPM</td>
</tr>
</table>
<br>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">Shredder</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $value['KNIFE3PRES']; ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $value['shredderrpm']; ?></td>
<td id="vtitle">RPM</td>
</tr>
<!--
<tr>
<td id="vtitle" >Output:</td>
<td id="sum-count"><?php // echo 0; ?></td>
<td id="vtitle">%</td>
</tr>
-->
<tr>
<?php
if ($value['KC3'] == 1) {
echo "<td colspan=\"3\" id=\"gopen\">Control</td>";
}
if ($value['KC3'] == 0) {
echo "<td colspan=\"3\" id=\"gclose\">Knife</td>";
}
?>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">Knife 1</td>
</tr>
<!--
<tr>
<td id="vtitle">Ring Pressure:</a></td>
<td id="sum-count"><?php echo $value['KNIFE1PRES']; ?></td>
<td id="vtitle">PSI</a></td>
</tr>
-->
<tr class="milling-alt-row">
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $value['K1SPD']; ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td id="vtitle" >Output:</td>
<td id="sum-count"><?php echo $value['KNIFE1OP']; ?></td>
<td id="vtitle">%</td>
</tr>
<tr>
<?php
if ($value['KC1'] == 1) {
echo "<td colspan=\"3\" id=\"gopen\">Control</td>";
}
if ($value['KC1'] == 0) {
echo "<td colspan=\"3\" id=\"gclose\">Knife</td>";
}
?>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="4" id="title">Knife 2</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $value['KNIFE2PRES']; ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr class="milling-alt-row">
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $value['KNF2SPD']; ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td id="vtitle" >Output:</td>
<td id="sum-count"><?php echo $value['KNIFE2OP']; ?></td>
<td id="vtitle">%</td>
</tr>
<tr>
<?php
if ($value['KC2'] == 1) {
echo "<td colspan=\"3\" id=\"gopen\">Control</td>";
}
if ($value['KC2'] == 0) {
echo "<td colspan=\"3\" id=\"gclose\">Knife</td>";
}
?>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">Knife 3</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $value['KNIFE3PRES']; ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr class="milling-alt-row">
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $value['KNF3SPD']; ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td id="vtitle" >Output:</td>
<td id="sum-count"><?php echo $value['KNIFE3OP']; ?></td>
<td id="vtitle">%</td>
</tr>
<tr>
<?php
if ($value['KC3'] == 1) {
echo "<td colspan=\"3\" id=\"gopen\">Control</td>";
}
if ($value['KC3'] == 0) {
echo "<td colspan=\"3\" id=\"gclose\">Knife</td>";
}
?>
</tr>
</table>
<?php
$payload = ob_get_clean();
$etag = '"' . md5($payload) . '"';
$clientEtag = isset($_SERVER['HTTP_IF_NONE_MATCH']) ? trim($_SERVER['HTTP_IF_NONE_MATCH']) : null;
if ($clientEtag && $clientEtag === $etag) {
header('HTTP/1.1 304 Not Modified');
header('Cache-Control: no-cache, must-revalidate');
header('ETag: ' . $etag);
exit;
}
header('Cache-Control: no-cache, must-revalidate');
header('Content-Type: text/html; charset=utf-8');
header('ETag: ' . $etag);
echo $payload;

View File

@@ -0,0 +1,661 @@
<?php
// phpcs:ignoreFile
$configuredBaseUrl = getenv('LASUCA_FEED_URL');
$roundedid = [];
$rounded = [];
$rounded1 = [];
$ID = [];
$value = [];
$endpointDataLoaded = false;
$endpointErrorMessage = null;
try {
if ($configuredBaseUrl !== false && $configuredBaseUrl !== '') {
$baseUrl = rtrim($configuredBaseUrl, '/');
} else {
$baseUrl = 'https://192.168.0.10';
}
$endpointUrl = rtrim($baseUrl, '/') . '/shared-endpoint/public/index.php';
$scheme = parse_url($endpointUrl, PHP_URL_SCHEME) ?: 'http';
$context = null;
if (strcasecmp($scheme, 'https') === 0) {
$host = parse_url($endpointUrl, PHP_URL_HOST) ?: 'localhost';
if (in_array($host, ['localhost', '127.0.0.1', '192.168.0.10'], true)) {
$context = stream_context_create([
'ssl' => [
'verify_peer' => false,
'verify_peer_name' => false,
],
]);
}
}
$response = @file_get_contents($endpointUrl, false, $context ?: null);
if ($response === false && strcasecmp($scheme, 'https') === 0) {
$fallbackUrl = preg_replace('#^https#i', 'http', $endpointUrl);
$response = @file_get_contents($fallbackUrl);
if ($response !== false) {
$endpointUrl = $fallbackUrl;
}
}
if ($response === false) {
throw new RuntimeException('Unable to reach shared endpoint: ' . $endpointUrl);
}
try {
$payload = json_decode($response, true, flags: JSON_THROW_ON_ERROR);
} catch (JsonException $exception) {
throw new RuntimeException('Malformed JSON from shared endpoint', 0, $exception);
}
if (($payload['status'] ?? null) !== 'ok') {
$message = $payload['message'] ?? 'unknown error';
throw new RuntimeException('Shared endpoint returned an error: ' . $message);
}
if (!isset($payload['items']) || !is_array($payload['items'])) {
$snippet = substr(strip_tags($response), 0, 200);
throw new RuntimeException('Shared endpoint response missing items. Snippet: ' . $snippet);
}
foreach ($payload['items'] as $item) {
$tagKey = str_pad((string) $item['tagId'], 5, '0', STR_PAD_LEFT);
$value[$item['name']] = $item['value'];
$rounded[$item['name']] = $item['rounded1'];
$rounded1[$item['name']] = $item['rounded2'];
$roundedid[$tagKey] = $item['rounded2'];
$ID[$tagKey] = $item['value'];
}
$endpointDataLoaded = true;
} catch (Throwable $exception) {
$endpointErrorMessage = $exception->getMessage();
error_log('Milling shared endpoint failed: ' . $endpointErrorMessage);
}
$dataSourceLabel = 'Shared endpoint';
if (!$endpointDataLoaded) {
require __DIR__ . '/../items.php';
require __DIR__ . '/../items2dec.php';
$dataSourceLabel = 'Legacy items.php data';
}
$formatValue = static function (string $key) use (&$value): string {
return number_format((float)($value[$key] ?? 0), 0, '.', '');
};
$formatNumber = static function ($number): string {
return number_format((float)$number, 0, '.', '');
};
$roundNumber = static function ($number): string {
return (string) round((float)$number);
};
$unixtime=time();
$unix5am=mktime(10, 00, 00);
if ($unixtime<=$unix5am) {
$unixtime += 86400;
}
$since5am=($unixtime-$unix5am)/3600;
$avgtonstoday=round($value['W TONS GROUND']/$since5am*24, 0);
ob_start();
?>
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="4" id="title">Steam</td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" colspan="4">
Data source: <?php echo htmlspecialchars($dataSourceLabel, ENT_QUOTES, 'UTF-8'); ?>
<?php if ($endpointErrorMessage !== null) : ?>
<br><small class="text-muted">Endpoint error: <?php echo htmlspecialchars($endpointErrorMessage, ENT_QUOTES, 'UTF-8'); ?></small>
<?php endif; ?>
</td>
</tr>
<tr>
<td id="vtitle" >Exhaust Pressure:</a></td>
<td colspan="2" id="sum-count"><?php echo $roundedid['00302']; ?></td>
<td id="vtitle">PSI</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Live Steam Pressure:</a></td>
<td colspan="2" id="sum-count"><?php echo $rounded['PT_001']; ?></td>
<td colspan="2" id="vtitle">PSI</a></td>
</tr>
<tr>
<td colspan="4" id="title">Tank Levels</td>
</tr>
<tr>
<td id="vtitle" >Juice Tank 1 Level:</td>
<td colspan="3" ><progress id="progresstanks" data-label="<?php echo $roundNumber($value['Juice Tank1'] ?? 0); ?>%" max="100" value="<?php echo $roundNumber($value['Juice Tank1'] ?? 0); ?>"></progress></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Juice Tank 2 Level:</td>
<td colspan="3" align="left"><progress id="progresstanks" data-label="<?php echo $roundNumber($value['Juice Tank2'] ?? 0); ?>%" max="100" value="<?php echo $roundNumber($value['Juice Tank2'] ?? 0); ?>"></progress></td
</tr>
<tr>
<td id="vtitle" id="padded">Total Syrup:</a></td>
<td colspan="3"><progress id="progresstanks" data-label="<?php echo round(($value['Syrup Overflow Lvl']*.82569)+($value['Syrup RCVR']*.17431), 0); ?>%" max="100" value="<?php echo round(($value['Syrup Overflow Lvl']*.82569)+($value['Syrup RCVR']*.17431), 0); ?>"></meter></td>
</tr>
<td colspan="4" id="title">YTD Grinding Info</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">Total <font size="" color="0eb31d"><b><?php require "../includes/milltotal.php";?></b></font> Tons Ground</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">East Mills <font size="" color="0eb31d"><b><?php require "../includes/easttotal.php";?></b></font> Tons Ground</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">West Mills <font size="" color="0eb31d"><b><?php require "../includes/westtotal.php";?></b></font> Tons Ground</td>
</tr>
<tr>
<td colspan="4" id="title">Daily Grinding Totals</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">Record Of <font size="" color="0eb31d"><b><?php require "../includes/record.php";?></b></font> Tons On <font size="" color="0eb31d"><b><?php require "../includes/recorddate.php";?></b></font></td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">Total Of <font size="" color="0eb31d"><b><?php echo $formatNumber(($value['PREVTONS'] ?? 0) + ($value['WPREVGROUND'] ?? 0)); ?></b></font> Tons Ground Yesterday</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">Total Of <font size="" color="0eb31d"><b><?php echo $formatNumber(($value['CANETOT'] ?? 0) + ($value['W TONS GROUND'] ?? 0)); ?></b></font> Tons Ground</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">Total Of <font size="" color="0eb31d"><b><?php require "../includes/millprojected60min.php";?></b></font> Tons Projected</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">Total Rate Of <font size="" color="0eb31d"><b><?php require "../includes/stablerate30.php";?></b></font> Tons/HR</td>
</tr>
<tr>
<tr class="milling-alt-row">
<td id="vtitle" ></td>
<td id="sum-count">East</td>
<td id="sum-count">West</td>
<td id="vtitle"></td>
</tr>
<tr>
<td id="vtitle" >Tons Per Hour:</a></td>
<td id="sum-count"><?php echo $formatValue('TONS_PER_HOUR'); ?></td>
<td id="sum-count"><?php echo $formatValue('RATE'); ?></td>
<td id="vtitle">Tons/Hr</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Avg Tons Per Hour:</a></td>
<td id="sum-count"><?php require "../includes/east15minavg.php";?></td>
<td id="sum-count"><?php require "../includes/west15minavg.php";?></td>
<td id="vtitle">Tons/15</a></td>
</tr>
<tr>
<td id="vtitle" >Tons Ground:</a></td>
<td id="sum-count"><?php echo $formatValue('CANETOT'); ?></td>
<td id="sum-count"><?php echo $formatValue('W TONS GROUND'); ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >AVG TCD:</a></td>
<td id="sum-count"><?php echo $formatValue('AVGTCD'); ?></td>
<td id="sum-count"><?php echo $formatNumber($avgtonstoday); ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td id="vtitle" >Run Hours Today:</a></td>
<td id="sum-count"><?php echo $rounded['RUNHRSTODAY']; ?></td>
<td id="sum-count"><?php echo $formatNumber(($value['todayrun'] ?? 0) / 10); ?></td>
<td id="vtitle">Hours</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Loss Time Today:</a></td>
<td id="sum-count"><?php echo $rounded['LOSSTIME']; ?></td>
<td id="sum-count"><?php echo $formatNumber(($value['todayloss'] ?? 0) / 10); ?></td>
<td id="vtitle">Hours</a></td>
</tr>
<tr>
<td id="vtitle" >Previous Day TCD:</a></td>
<td id="sum-count"><?php echo $formatValue('PREVTONS'); ?></td>
<td id="sum-count"><?php echo $formatValue('WPREVGROUND'); ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Previous Day Run Hours:</a></td>
<td id="sum-count"><?php echo $formatValue('PREVTIME'); ?></td>
<td id="sum-count"><?php // echo $value['WPREVTIME'] / (10 ** $d); ?></td>
<td id="vtitle">Hours</a></td>
</tr>
<tr>
<td id="vtitle" >Previous Day PPH/Ton:</a></td>
<td id="sum-count"><?php echo $formatValue('LBSPERHR'); ?></td>
<td id="sum-count"> </td>
<td id="vtitle">PPH/Ton</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Previous Day IMB 5:</a></td>
<td id="sum-count"><?php echo round($value['EIMB5PrevDay'] * 8.34 / 2000); ?></td>
<td id="sum-count"> </td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td id="vtitle" >Previous Day IMB 6:</a></td>
<td id="sum-count"><?php echo round($value['EIMB6PrevDay'] * 8.34 / 2000); ?></td>
<td id="sum-count"> </td>
<td id="vtitle">Tons</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Imibition 5 Flow:</a></td>
<td id="sum-count"><?php echo $formatValue('IMB5Flow'); ?></td>
<td id="sum-count"><?php echo $formatValue('WMillIMBFlow'); ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" >Imibition 5 Total:</a></td>
<td id="sum-count"><?php echo $formatValue('IMB5TOT'); ?></td>
<td id="sum-count"></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Imibition 6 Flow:</a></td>
<td id="sum-count"><?php echo $formatValue('IMB6Flow'); ?></td>
<td id="sum-count"> </td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" >Imibition 6 Total:</a></td>
<td id="sum-count"><?php echo $formatValue('IMB6TOT'); ?></td>
<td id="sum-count"></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Imibition 5 SP:</a></td>
<td id="sum-count"><?php echo $ID['00164']; ?></td>
<td id="sum-count"><?php echo $formatValue('WMillIMBSP'); ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" >Imibition 6 SP:</a></td>
<td id="sum-count"><?php echo $formatValue('IMB6SP'); ?></td>
<td id="sum-count"> </td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td colspan="4" id="title">Main Carrier</td>
</tr>
<tr>
<td id="vtitle" ></td>
<td id="sum-count">East</td>
<td id="sum-count">West</td>
<td id="vtitle"></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >MCC FPM:</a></td>
<td id="sum-count"><?php echo $formatValue('MAINSPD'); ?></td>
<td id="sum-count"><?php echo $formatValue('Feet/Minute'); ?></td>
<td id="vtitle">FPM</a></td>
</tr>
<tr>
<td id="vtitle" >MCC Output:</a></td>
<td id="sum-count"><?php echo $formatValue('MCCOUTPUT'); ?></td>
<td id="sum-count"><?php echo $formatValue('Output'); ?></td>
<td id="vtitle">%</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >MCC Tons:</a></td>
<td id="sum-count"><?php echo $rounded1['MCCTONS']; ?></td>
<td id="sum-count"> </td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td colspan="4" id="title">Mill 1</td>
</tr>
<tr>
<td id="vtitle" >Chute Level:</a></td>
<td id="sum-count"><?php echo $ID['00350']; ?></td>
<td id="sum-count"><?php echo $ID['00914']; ?></td>
<td id="vtitle">%</a></td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</a></td>
<td id="sum-count"><?php echo $formatValue('MILL1PRES'); ?></td>
<td id="vtitle">PSI</a></td>
</tr>
-->
<tr class="milling-alt-row">
<td id="vtitle" >Turbin Speed:</a></td>
<td id="sum-count"><?php echo $formatValue('EMILL1RPM'); ?></td>
<td id="sum-count"><?php echo $ID['00926']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" >Turbin Output:</a></td>
<td id="sum-count"><?php echo $formatValue('MILL1OUTPUT'); ?></td>
<td id="sum-count"> </td>
<td id="vtitle">%</a></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Set Point East:</td>
<?php
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 1) {
echo '<td colspan="2" id="sum-count" >' . $formatValue('WEIGHT_WSP') . '</font></td>';
}
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 0) {
echo '<td colspan="2" id="sum-count">' . $formatValue('MILL1WSP') . '</font></td>';
}
?>
<?php
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 1) {
echo "<td id=\"vtitle\">Tons/Hr</font></td>";
}
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 0) {
echo "<td id=\"vtitle\">%</font></td>";
}
?>
</tr><tr>
<td id="vtitle" >Set Point West:</td>
<?php
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 1) {
echo '<td colspan="2" id="sum-count" > </font></td>';
}
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 0) {
echo '<td colspan="2" id="sum-count"> </font></td>';
}
?>
<?php
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 1) {
echo "<td id=\"vtitle\">Tons/Hr</font></td>";
}
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 0) {
echo "<td id=\"vtitle\">%</font></td>";
}
?>
</tr>
<tr>
<?php
if ($value['MILL1AUTOMAN1'] == 1) {
echo "<td colspan=\"4\" id=\"gopen\">Auto</td>";
}
if ($value['MILL1AUTOMAN1'] == 0) {
echo "<td colspan=\"4\" id=\"gclose\">Manual</td>";
}
?>
</tr>
<tr>
<td colspan="4" id="title">Mill 2</td>
</tr>
<tr>
<td id="vtitle" ></td>
<td id="sum-count">East</td>
<td id="sum-count">West</td>
<td id="vtitle"></td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Chute Level:</td>
<td id="sum-count"><?php echo $formatValue('M2LVL'); ?></td>
<td id="sum-count"><?php echo $ID['00916']; ?></td>
<td id="vtitle">%</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $formatValue('MIL2PRES'); ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $formatValue('EMILL2RPM'); ?></td>
<td id="sum-count"><?php echo $ID['00930']; ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td colspan="4" id="title">Mill 3</td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Chute Level:</td>
<td id="sum-count"><?php echo $formatValue('MIL3LVL'); ?></td>
<td id="sum-count"><?php echo $ID['01020']; ?></td>
<td id="vtitle">%</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $formatValue('MIL3PRES'); ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $formatValue('EMILL3RPM'); ?></td>
<td id="sum-count"><?php echo $formatValue('W3RPM'); ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td colspan="4" id="title">Mill 4</td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Chute Level:</td>
<td id="sum-count"><?php echo $formatValue('MIL4LVL'); ?></td>
<td id="sum-count"><?php echo $ID['00918']; ?></td>
<td id="vtitle">%</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $formatValue('MIL4PRES'); ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $formatValue('EMILL4RPM'); ?></td>
<td id="sum-count"><?php echo $ID['00934']; ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td colspan="4" id="title">Mill 5</td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Chute Level:</td>
<td id="sum-count"><?php echo $formatValue('MIL5LVL'); ?></td>
<td id="sum-count"><?php echo $ID['00920']; ?></td>
<td id="vtitle">%</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $formatValue('MIL5PRES'); ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $formatValue('EMILL5RPM'); ?></td>
<td id="sum-count"><?php echo $ID['00940']; ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td colspan="4" id="title">Mill 6</td>
</tr>
<tr class="milling-alt-row">
<td id="vtitle" >Chute Level:</td>
<td colspan="2" id="sum-count"><?php echo $formatValue('MIL6LVL'); ?></td>
<td id="vtitle">%</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $formatValue('MIL6PRES'); ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td colspan="2" id="sum-count"><?php echo $formatValue('EMILL6RPM'); ?></td>
<td id="vtitle">RPM</td>
</tr>
</table>
<br>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">Shredder</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $formatValue('KNIFE3PRES'); ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $formatValue('shredderrpm'); ?></td>
<td id="vtitle">RPM</td>
</tr>
<!--
<tr>
<td id="vtitle" >Output:</td>
<td id="sum-count"><?php // echo 0; ?></td>
<td id="vtitle">%</td>
</tr>
-->
<tr>
<?php
if ($value['KC3'] == 1) {
echo "<td colspan=\"3\" id=\"gopen\">Control</td>";
}
if ($value['KC3'] == 0) {
echo "<td colspan=\"3\" id=\"gclose\">Knife</td>";
}
?>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">Knife 1</td>
</tr>
<!--
<tr>
<td id="vtitle">Ring Pressure:</a></td>
<td id="sum-count"><?php echo $formatValue('KNIFE1PRES'); ?></td>
<td id="vtitle">PSI</a></td>
</tr>
-->
<tr class="milling-alt-row">
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $formatValue('K1SPD'); ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td id="vtitle" >Output:</td>
<td id="sum-count"><?php echo $formatValue('KNIFE1OP'); ?></td>
<td id="vtitle">%</td>
</tr>
<tr>
<?php
if ($value['KC1'] == 1) {
echo "<td colspan=\"3\" id=\"gopen\">Control</td>";
}
if ($value['KC1'] == 0) {
echo "<td colspan=\"3\" id=\"gclose\">Knife</td>";
}
?>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="4" id="title">Knife 2</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $formatValue('KNIFE2PRES'); ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr class="milling-alt-row">
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $formatValue('KNF2SPD'); ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td id="vtitle" >Output:</td>
<td id="sum-count"><?php echo $formatValue('KNIFE2OP'); ?></td>
<td id="vtitle">%</td>
</tr>
<tr>
<?php
if ($value['KC2'] == 1) {
echo "<td colspan=\"3\" id=\"gopen\">Control</td>";
}
if ($value['KC2'] == 0) {
echo "<td colspan=\"3\" id=\"gclose\">Knife</td>";
}
?>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">Knife 3</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $formatValue('KNIFE3PRES'); ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr class="milling-alt-row">
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $formatValue('KNF3SPD'); ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td id="vtitle" >Output:</td>
<td id="sum-count"><?php echo $formatValue('KNIFE3OP'); ?></td>
<td id="vtitle">%</td>
</tr>
<tr>
<?php
if ($value['KC3'] == 1) {
echo "<td colspan=\"3\" id=\"gopen\">Control</td>";
}
if ($value['KC3'] == 0) {
echo "<td colspan=\"3\" id=\"gclose\">Knife</td>";
}
?>
</tr>
</table>
<?php
$payload = ob_get_clean();
$etag = '"' . md5($payload) . '"';
$clientEtag = isset($_SERVER['HTTP_IF_NONE_MATCH']) ? trim($_SERVER['HTTP_IF_NONE_MATCH']) : null;
if ($clientEtag && $clientEtag === $etag) {
header('HTTP/1.1 304 Not Modified');
header('Cache-Control: no-cache, must-revalidate');
header('ETag: ' . $etag);
exit;
}
header('Cache-Control: no-cache, must-revalidate');
header('Content-Type: text/html; charset=utf-8');
header('ETag: ' . $etag);
echo $payload;

View File

@@ -0,0 +1,525 @@
<?php
include("../items.php");
$unixtime=time();
$unix5am=mktime(10, 00, 00);
if ($unixtime<=$unix5am) {
$unixtime += 86400;
}
$since5am=($unixtime-$unix5am)/3600;
$avgtonstoday=round($value['W TONS GROUND']/$since5am*24, 0);
?>
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="4" id="title">Steam</td>
</tr>
<tr>
<td id="vtitle" >Exhaust Pressure:</a></td>
<td colspan="2" id="sum-count"><?php echo $roundedid['00244']; ?></td>
<td id="vtitle">PSI</a></td>
</tr>
<tr>
<td id="vtitle" >Live Steam Pressure:</a></td>
<td colspan="2" id="sum-count"><?php echo $value['PT_001']; ?></td>
<td colspan="2" id="vtitle">PSI</a></td>
</tr>
<tr>
<td colspan="4" id="title">Tank Levels</td>
</tr>
<tr>
<td id="vtitle" >Juice Tank 1 Level:</td>
<td colspan="3" ><progress id="progresstanks" data-label="<?php echo $value['Juice Tank1']; ?>%" max="100" value="<?php echo $value['Juice Tank1']; ?>"></progress></td>
</tr>
<tr>
<td id="vtitle" >Juice Tank 2 Level:</td>
<td colspan="3" align="left"><progress id="progresstanks" data-label="<?php echo $value['Juice Tank2']; ?>%" max="100" value="<?php echo $value['Juice Tank2']; ?>"></progress></td
</tr>
<tr>
<td id="vtitle" id="padded">Total Syrup:</a></td>
<td colspan="3"><progress id="progresstanks" data-label="<?php echo round(($value['Syrup Overflow Lvl']*.82569)+($value['Syrup RCVR']*.17431),0); ?>%" max="100" value="<?php echo round(($value['Syrup Overflow Lvl']*.82569)+($value['Syrup RCVR']*.17431),0); ?>"></meter></td>
</tr>
<tr>
<td colspan="4" id="title">Grinding Info</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center"> <font size="" color="0eb31d"><b><?php include("passedhours.php");?></b></font>Hours Passed this Crop Day</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center"> <font size="" color="0eb31d"><b><?php include("remaininghours.php");?></b></font>Hours Remaining this Crop Day</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">Total Of <font size="" color="0eb31d"><b><?php echo ($value['CANETOT'] + $value['W TONS GROUND']); ?></b></font> Tons Ground Today</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">Record Of <font size="" color="0eb31d"><b><?php include("record.php");?></b></font> Tons On <font size="" color="0eb31d"><b><?php include("recorddate.php");?></b></font></td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">Total Of <font size="" color="0eb31d"><b><?php echo ($value['PREVTONS'] + $value['WPREVGROUND']); ?></b></font> Tons Ground Yesterday</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">5 min <font size="" color="0eb31d"><b><?php include("millprojected5min.php");?></b></font> Tons Projected Today</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">15 min <font size="" color="0eb31d"><b><?php include("millprojected15min.php");?></b></font> Tons Projected Today</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">30 min <font size="" color="0eb31d"><b><?php include("millprojected30min.php");?></b></font> Tons Projected Today</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">60 min <font size="" color="0eb31d"><b><?php include("millprojected60min.php");?></b></font> Tons Projected Today</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">Total Rate Of <font size="" color="0eb31d"><b><?php echo $value['TONS_PER_HOUR'] + $value['RATE']; ?></b></font> Tons/HR</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">30 sec Rate Of <font size="" color="0eb31d"><b><?php include("stablerate30.php");?></b></font> Tons/HR</td>
</tr>
<tr>
<td colspan="4" id="total-tons" align="center">60 sec Rate Of <font size="" color="0eb31d"><b><?php include("stablerate60.php");?></b></font> Tons/HR</td>
</tr>
<tr>
<td id="vtitle" ></td>
<td id="sum-count">East</td>
<td id="sum-count">West</td>
<td id="vtitle"></td>
</tr>
<tr>
<td id="vtitle" >Tons Per Hour:</a></td>
<td id="sum-count"><?php echo $value['TONS_PER_HOUR']; ?></td>
<td id="sum-count"> <?php echo $value['RATE']; ?></td>
<td id="vtitle">Tons/Hr</a></td>
</tr>
<tr>
<td id="vtitle" >Avg Tons Per Hour:</a></td>
<td id="sum-count"><?php include("east15minavg.php");?></td>
<td id="sum-count"><?php include("west15minavg.php");?></td>
<td id="vtitle">Tons/15Min</a></td>
</tr>
<tr>
<td id="vtitle" >Tons Ground:</a></td>
<td id="sum-count"><?php echo $value['CANETOT']; ?></td>
<td id="sum-count"><?php echo $value['W TONS GROUND']; ?> </td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td id="vtitle" >AVG TCD:</a></td>
<td id="sum-count"><?php echo $value['AVGTCD']; ?></td>
<td id="sum-count"> <?php echo $avgtonstoday; ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td id="vtitle" >Run Hours Today:</a></td>
<td id="sum-count"><?php echo $rounded['RUNHRSTODAY']; ?></td>
<td id="sum-count"><?php echo $value['todayrun'] / (10); ?></td>
<td id="vtitle">Hours</a></td>
</tr>
<tr>
<td id="vtitle" >Loss Time Today:</a></td>
<td id="sum-count"><?php echo $rounded['LOSSTIME']; ?></td>
<td id="sum-count"><?php echo $value['todayloss'] / (10); ?></td>
<td id="vtitle">Hours</a></td>
</tr>
<tr>
<td id="vtitle" ><a href="#" onclick="popitup('data/totgroundprev.php')">Previous Day TCD:</a></td>
<td id="sum-count"><?php echo $value['PREVTONS']; ?></td>
<td id="sum-count"><?php echo $value['WPREVGROUND']; ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td id="vtitle" >Previous Day Run Hours:</a></td>
<td id="sum-count"><?php echo $value['PREVTIME']; ?></td>
<td id="sum-count"><?php // echo $value['WPREVTIME'] / (10 ** $d); ?></td>
<td id="vtitle">Hours</a></td>
</tr>
<tr>
<td id="vtitle" >Previous Day PPH/Ton:</a></td>
<td id="sum-count"><?php echo $value['LBSPERHR']; ?></td>
<td id="sum-count"> </td>
<td id="vtitle">PPH/Ton</a></td>
</tr>
<tr>
<td id="vtitle" >Previous Day IMB 5:</a></td>
<td id="sum-count"><?php echo round($value['EIMB5PrevDay'] * 8.34 / 2000); ?></td>
<td id="sum-count"> </td>
<td id="vtitle">Tons</a></td>
</tr>
<td id="vtitle" >Previous Day IMB 6:</a></td>
<td id="sum-count"><?php echo round($value['EIMB6PrevDay'] * 8.34 / 2000); ?></td>
<td id="sum-count"> </td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td id="vtitle" ><a href="#" onclick="popupCenter('../charts/imbflow.php')">Imibition 5 Flow:</a></td>
<td id="sum-count"><?php echo $value['IMB5Flow']; ?></td>
<td id="sum-count"><?php echo $value['WMillIMBFlow']; ?> </td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" >Imibition 5 Total:</a></td>
<td id="sum-count"><?php echo $value['IMB5TOT']; ?></td>
<td id="sum-count"></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" ><a href="#" onclick="popupCenter('../charts/imbflow.php')">Imibition 6 Flow:</a></td>
<td id="sum-count"><?php echo $value['IMB6Flow']; ?></td>
<td id="sum-count"> </td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" >Imibition 6 Total:</a></td>
<td id="sum-count"><?php echo $value['IMB6TOT']; ?></td>
<td id="sum-count"></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td id="vtitle" >Imibition 5 SP:</a></td>
<td id="sum-count"><?php echo $value['IMB5SP']; ?></td>
<td id="sum-count"><?php echo $value['WMillIMBSP']; ?></td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<tr>
<td id="vtitle" >Imibition 6 SP:</a></td>
<td id="sum-count"><?php echo $value['IMB6SP']; ?></td>
<td id="sum-count"> </td>
<td id="vtitle">GPM</a></td>
</tr>
<tr>
<td colspan="4" id="title">Main Carrier</td>
</tr>
<tr>
<td id="vtitle" ></td>
<td id="sum-count">East</td>
<td id="sum-count">West</td>
<td id="vtitle"></td>
</tr>
<tr>
<td id="vtitle" >MCC FPM:</a></td>
<td id="sum-count"><?php echo $value['MAINSPD']; ?></td>
<td id="sum-count"><?php echo $value['Feet/Minute']; ?></td>
<td id="vtitle">FPM</a></td>
</tr>
<tr>
<td id="vtitle" >MCC Output:</a></td>
<td id="sum-count"><?php echo $value['MCCOUTPUT']; ?></td>
<td id="sum-count"><?php echo $value['Output']; ?></td>
<td id="vtitle">%</a></td>
</tr><tr>
<td id="vtitle" >MCC Tons:</a></td>
<td id="sum-count"><?php echo $rounded1['MCCTONS']; ?></td>
<td id="sum-count"> </td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td colspan="4" id="title">Mill 1</td>
</tr>
<tr>
<td id="vtitle" >Chute Level:</a></td>
<td id="sum-count"><?php echo $ID['00350']; ?></td>
<td id="sum-count"><?php echo $ID['00612']; ?></td>
<td id="vtitle">%</a></td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</a></td>
<td id="sum-count"><?php echo $value['MILL1PRES']; ?></td>
<td id="vtitle">PSI</a></td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</a></td>
<td id="sum-count"><?php echo $value['EMILL1RPM']; ?></td>
<td id="sum-count"><?php echo $ID['00666']; ?></td>
<td id="vtitle">RPM</a></td>
</tr>
<tr>
<td id="vtitle" >Turbin Output:</a></td>
<td id="sum-count"><?php echo $value['MILL1OUTPUT']; ?></td>
<td id="sum-count"> </td>
<td id="vtitle">%</a></td>
</tr>
<tr>
<td id="vtitle" >Set Point East:</td>
<?php
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 1)
echo "<td colspan=\"2\" id=\"sum-count\" >".$value['WEIGHT_WSP']."</font></td>";
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 0)
echo "<td colspan=\"2\" id=\"sum-count\">".$value['MILL1WSP']."</font></td>";
?>
<?php
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 1)
echo "<td id=\"vtitle\">Tons/Hr</font></td>";
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 0)
echo "<td id=\"vtitle\">%</font></td>";
?>
</tr><tr>
<td id="vtitle" >Set Point West:</td>
<?php
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 1)
echo "<td colspan=\"2\" id=\"sum-count\" > </font></td>";
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 0)
echo "<td colspan=\"2\" id=\"sum-count\"> </font></td>";
?>
<?php
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 1)
echo "<td id=\"vtitle\">Tons/Hr</font></td>";
if ($value['LEVEL_THROUGHPUT_SWITCH'] == 0)
echo "<td id=\"vtitle\">%</font></td>";
?>
</tr>
<tr>
<?php
if ($value['MILL1AUTOMAN1'] == 1)
echo "<td colspan=\"4\" id=\"gopen\">Auto</td>";
if ($value['MILL1AUTOMAN1'] == 0)
echo "<td colspan=\"4\" id=\"gclose\">Manual</td>";
?>
</tr>
<tr>
<td colspan="4" id="title">Mill 2</td>
</tr>
<tr>
<td id="vtitle" ></td>
<td id="sum-count">East</td>
<td id="sum-count">West</td>
<td id="vtitle"></td>
</tr>
<tr>
<td id="vtitle" >Chute Level:</td>
<td id="sum-count"><?php echo $value['M2LVL']; ?></td>
<td id="sum-count"><?php echo $ID['00616']; ?></td>
<td id="vtitle">%</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $value['MIL2PRES']; ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $value['EMILL2RPM']; ?></td>
<td id="sum-count"><?php echo $ID['00670']; ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td colspan="4" id="title">Mill 3</td>
</tr>
<tr>
<td id="vtitle" >Chute Level:</td>
<td id="sum-count"><?php echo $value['MIL3LVL']; ?></td>
<td id="sum-count"> </td>
<td id="vtitle">%</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $value['MIL3PRES']; ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $value['EMILL3RPM']; ?></td>
<td id="sum-count"> </td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td colspan="4" id="title">Mill 4</td>
</tr>
<tr>
<td id="vtitle" >Chute Level:</td>
<td id="sum-count"><?php echo $value['MIL4LVL']; ?></td>
<td id="sum-count"><?php echo $ID['00620']; ?></td>
<td id="vtitle">%</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $value['MIL4PRES']; ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $value['EMILL4RPM']; ?></td>
<td id="sum-count"><?php echo $ID['00674']; ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td colspan="4" id="title">Mill 5</td>
</tr>
<tr>
<td id="vtitle" >Chute Level:</td>
<td id="sum-count"><?php echo $value['MIL5LVL']; ?></td>
<td id="sum-count"><?php echo $ID['00678']; ?></td>
<td id="vtitle">%</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $value['MIL5PRES']; ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $value['EMILL5RPM']; ?></td>
<td id="sum-count"><?php echo $ID['00680']; ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td colspan="4" id="title">Mill 6</td>
</tr>
<tr>
<td id="vtitle" >Chute Level:</td>
<td colspan="2" id="sum-count"><?php echo $value['MIL6LVL']; ?></td>
<td id="vtitle">%</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $value['MIL6PRES']; ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td colspan="2" id="sum-count"><?php echo $value['EMILL6RPM']; ?></td>
<td id="vtitle">RPM</td>
</tr>
</table>
<br>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">Shredder</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $value['KNIFE3PRES']; ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo 0; ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td id="vtitle" >Output:</td>
<td id="sum-count"><?php echo 0; ?></td>
<td id="vtitle">%</td>
</tr>
<tr>
<?php
if ($value['KC3'] == 1)
echo "<td colspan=\"3\" id=\"gopen\">Control</td>";
if ($value['KC3'] == 0)
echo "<td colspan=\"3\" id=\"gclose\">Knife</td>";
?>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">Knife 1</td>
</tr>
<!--
<tr>
<td id="vtitle">Ring Pressure:</a></td>
<td id="sum-count"><?php echo $value['KNIFE1PRES']; ?></td>
<td id="vtitle">PSI</a></td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $value['K1SPD']; ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td id="vtitle" >Output:</td>
<td id="sum-count"><?php echo $value['KNIFE1OP']; ?></td>
<td id="vtitle">%</td>
</tr>
<tr>
<?php
if ($value['KC1'] == 1)
echo "<td colspan=\"3\" id=\"gopen\">Control</td>";
if ($value['KC1'] == 0)
echo "<td colspan=\"3\" id=\"gclose\">Knife</td>";
?>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="4" id="title">Knife 2</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $value['KNIFE2PRES']; ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $value['KNF2SPD']; ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td id="vtitle" >Output:</td>
<td id="sum-count"><?php echo $value['KNIFE2OP']; ?></td>
<td id="vtitle">%</td>
</tr>
<tr>
<?php
if ($value['KC2'] == 1)
echo "<td colspan=\"3\" id=\"gopen\">Control</td>";
if ($value['KC2'] == 0)
echo "<td colspan=\"3\" id=\"gclose\">Knife</td>";
?>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">Knife 3</td>
</tr>
<!--
<tr>
<td id="vtitle" >Ring Pressure:</td>
<td id="sum-count"><?php echo $value['KNIFE3PRES']; ?></td>
<td id="vtitle">PSI</td>
</tr>
-->
<tr>
<td id="vtitle" >Turbin Speed:</td>
<td id="sum-count"><?php echo $value['KNF3SPD']; ?></td>
<td id="vtitle">RPM</td>
</tr>
<tr>
<td id="vtitle" >Output:</td>
<td id="sum-count"><?php echo $value['KNIFE3OP']; ?></td>
<td id="vtitle">%</td>
</tr>
<tr>
<?php
if ($value['KC3'] == 1)
echo "<td colspan=\"3\" id=\"gopen\">Control</td>";
if ($value['KC3'] == 0)
echo "<td colspan=\"3\" id=\"gclose\">Knife</td>";
?>
</tr>
</table>

View File

@@ -0,0 +1,256 @@
<?php
// phpcs:ignoreFile
date_default_timezone_set('America/Chicago');
$curDate = date('l, M j, Y h:i:s a');
$configuredBaseUrl = getenv('LASUCA_FEED_URL');
$roundedid = [];
$rounded = [];
$rounded1 = [];
$ID = [];
$value = [];
$endpointDataLoaded = false;
$endpointErrorMessage = null;
try {
if ($configuredBaseUrl !== false && $configuredBaseUrl !== '') {
$baseUrl = rtrim($configuredBaseUrl, '/');
} else {
$baseUrl = 'https://192.168.0.10';
}
$endpointUrl = rtrim($baseUrl, '/') . '/shared-endpoint/public/index.php';
$scheme = parse_url($endpointUrl, PHP_URL_SCHEME) ?: 'http';
$context = null;
if (strcasecmp($scheme, 'https') === 0) {
$host = parse_url($endpointUrl, PHP_URL_HOST) ?: 'localhost';
if (in_array($host, ['localhost', '127.0.0.1', '192.168.0.10', '192.168.0.16'], true)) {
$context = stream_context_create([
'ssl' => [
'verify_peer' => false,
'verify_peer_name' => false,
],
]);
}
}
$response = @file_get_contents($endpointUrl, false, $context ?: null);
if ($response === false && strcasecmp($scheme, 'https') === 0) {
$fallbackUrl = preg_replace('#^https#i', 'http', $endpointUrl);
$response = @file_get_contents($fallbackUrl);
if ($response !== false) {
$endpointUrl = $fallbackUrl;
}
}
if ($response === false) {
throw new RuntimeException('Unable to reach shared endpoint: ' . $endpointUrl);
}
try {
$payload = json_decode($response, true, flags: JSON_THROW_ON_ERROR);
} catch (JsonException $exception) {
throw new RuntimeException('Malformed JSON from shared endpoint', 0, $exception);
}
if (($payload['status'] ?? null) !== 'ok') {
$message = $payload['message'] ?? 'unknown error';
throw new RuntimeException('Shared endpoint returned an error: ' . $message);
}
if (!isset($payload['items']) || !is_array($payload['items'])) {
$snippet = substr(strip_tags($response), 0, 200);
throw new RuntimeException('Shared endpoint response missing items. Snippet: ' . $snippet);
}
foreach ($payload['items'] as $item) {
$tagKey = str_pad((string) $item['tagId'], 5, '0', STR_PAD_LEFT);
$value[$item['name']] = $item['value'];
$rounded[$item['name']] = $item['rounded1'];
$rounded1[$item['name']] = $item['rounded2'];
$roundedid[$tagKey] = $item['rounded2'];
$ID[$tagKey] = $item['value'];
}
$endpointDataLoaded = true;
} catch (Throwable $exception) {
$endpointErrorMessage = $exception->getMessage();
error_log('Milling shared endpoint failed: ' . $endpointErrorMessage);
}
$dataSourceLabel = 'Shared endpoint';
if (!$endpointDataLoaded) {
require __DIR__ . '/../items.php';
require __DIR__ . '/../items2dec.php';
$dataSourceLabel = 'Legacy items.php data';
}
// Helper function for rendering data rows
function renderDataRow($label, $value, $unit = "") {
$safeValue = htmlspecialchars($value);
return "<tr>
<td id=\"vtitle\">$label</td>
<td id=\"sum-count\">$safeValue</td>
<td id=\"vtitle\">$unit</td>
</tr>";
}
// Helper function for rendering progress bars
function renderProgressBar($value, $id = "progresstanks") {
$safeValue = htmlspecialchars($value);
return "<progress id=\"$id\" data-label=\"{$safeValue}%\" max=\"100\" value=\"{$safeValue}\"></progress>";
}
// Helper function for tank level rows
function renderTankRow($label, $value) {
return "<tr>
<td id=\"vtitle\">$label</td>
<td colspan=\"2\">" . renderProgressBar($value) . "</td>
</tr>";
}
// Define data arrays for cleaner loops
$overviewData = [
'Live Steam Pressure:' => [$value['PT_001'], 'PSI'],
'Exhaust Pressure:' => [$roundedid['00302'], 'PSI'],
'Exhaust Pressure At Pan 9:' => [$value['PAN9 EXST'], 'PSI'],
'Vapor Pressure at Pan 8:' => [$value['VAPORPRES'], 'PSI'],
'Pan 8 Level:' => [$value['PAN8 LVL'], '%'],
'Vapor Header Pressure:' => [$value['VAPOR HDR PRES'], 'PSI'],
'New Evap Vapor Valve:' => [$value['35kVaporValve'], '%'],
'Final Molasses Temp:' => [$value['FinalMolTemp'], 'F'],
'Cold Water Inj Temp:' => [$value['Cold Water Injection'], 'F'],
'Hot Water Inj Temp:' => [$value['Hot Water Injection'], 'F'],
'City Water Pressure:' => [$value['CityWaterPressure'], 'PSI'],
'House Air Pressure:' => [$value['HouseAirPressure'], 'PSI'],
'Clear Juice Make Up Daily TOT:' => [$value['Clear Juice Make Up Daily TOT'], 'Gallons'],
];
$tankLevels = [
'Juice Tank 1 Level:' => $value['Juice Tank1'],
'Juice Tank 2 Level:' => $value['Juice Tank2'],
'Syrup RCVR Level:' => $value['Syrup RCVR'],
'Syrup Overflow Level:' => $value['Syrup Overflow Lvl'],
'A1 Molasses RCVR Level:' => $value['A1 RCVR'],
'A1 Molasses Overflow Level:' => $value['A1 Molasses Overflow Lvl'],
'A2 Molasses RCVR Level:' => $value['A2 RCVR'],
'A2 Molasses Overflow Level:' => $value['A2 Molasses Overflow Lvl'],
'B Molasses RCVR Level:' => $value['B RCVR'],
'B Molasses Overflow Level:' => $value['B Molasses Overflow Lvl'],
'Condensate Water Level:' => $value['CondensateWater'],
'Sweetwater Level:' => $value['SweetwaterTank'],
'Cold Water Inj Level:' => $value['Cold Water Injection LVL'],
'Flash Tank Level:' => $value['FlashTankLVL']
];
?>
<div>
<table width="100%" border="1" cellspacing="0" cellpadding="2">
<tr >
<td id="datetime" colspan="4">
<?php echo $curDate; ?>
</td>
</tr>
<?php require __DIR__ . '/../includes/alerts.php'; ?>
<!-- Scale Data Section -->
<tr class="milling-alt-row">
<td id="vtitle" colspan="4">
Data source: <?php echo htmlspecialchars($dataSourceLabel, ENT_QUOTES, 'UTF-8'); ?>
<?php if ($endpointErrorMessage !== null) : ?>
<br><small class="text-muted">Endpoint error: <?php echo htmlspecialchars($endpointErrorMessage, ENT_QUOTES, 'UTF-8'); ?></small>
<?php endif; ?>
</td>
</tr>
<tr>
<td colspan="3" id="title">Scale Data</td>
</tr>
<tr>
<td id="vtitle">Cane In Today:</td>
<td id="sum-count"><?php include("../includes/tonsin.php"); ?></td>
<td id="vtitle">Tons</td>
</tr>
<tr>
<td id="vtitle">Cane In Yesterday:</td>
<td id="sum-count"><?php include("../includes/tonsinprev.php"); ?></td>
<td id="vtitle">Tons</td>
</tr>
<tr>
<td id="vtitle">YTD Cane Total Tons:</td>
<td id="sum-count"><?php include("../includes/tonsintot.php"); ?></td>
<td id="vtitle">Tons</td>
</tr>
<!-- Overview Section -->
<tr>
<td colspan="3" id="title">Overview</td>
</tr>
<tr>
<td id="vtitle">Vapor 2:</td>
<td id="sum-count"><?php include("../includes/Vapor2.php"); ?></td>
<td id="vtitle">PSI</td>
</tr>
<?php foreach ($overviewData as $label => $data): ?>
<?php echo renderDataRow($label, $data[0], $data[1]); ?>
<?php endforeach; ?>
<!-- Tank Levels Section -->
<tr>
<td colspan="3" id="title">Tank Levels</td>
</tr>
<?php foreach ($tankLevels as $label => $levelValue): ?>
<?php echo renderTankRow($label, $levelValue); ?>
<?php endforeach; ?>
<!-- Special case: Total Syrup Levels with calculation -->
<tr>
<td id="vtitle">Total Syrup Level:</td>
<td colspan="2">
<?php
$totalSyrup = round(($value['Syrup Overflow Lvl'] * 0.874919) + ($value['Syrup RCVR'] * 0.125081), 0);
echo renderProgressBar($totalSyrup);
?>
</td>
</tr>
<tr>
<td id="vtitle">Total A1 Molasses:</td>
<td colspan="2">
<?php
$totalSyrup = round(($value['A1 Molasses Overflow Lvl'] * 0.571302) + ($value['A1 RCVR'] * 0.428698), 0);
echo renderProgressBar($totalSyrup);
?>
</td>
</tr>
<tr>
<td id="vtitle">Total A2 Molasses:</td>
<td colspan="2">
<?php
$totalSyrup = round(($value['A2 Molasses Overflow Lvl'] * 0.573925) + ($value['A2 RCVR'] * 0.426075), 0);
echo renderProgressBar($totalSyrup);
?>
</td>
</tr>
<tr>
<td id="vtitle">Total B Molasses:</td>
<td colspan="2">
<?php
$totalSyrup = round(($value['B Molasses Overflow Lvl'] * 0.757982) + ($value['B RCVR'] * 0.242018), 0);
echo renderProgressBar($totalSyrup);
?>
</td>
</tr>
</table>
</div>

View File

@@ -0,0 +1,144 @@
<?php
require __DIR__ . '/../../session.php';
require __DIR__ . '/../../dbinfo.php';
header('Content-Type: application/json');
header('Cache-Control: no-cache, must-revalidate');
if (!isset($_SESSION['SESS_MEMBER_ID'])
|| !is_numeric($_SESSION['SESS_MEMBER_ID'])
) {
http_response_code(403);
echo json_encode(
[
'success' => false,
'error' => 'Not authenticated',
]
);
exit;
}
$userId = (int) $_SESSION['SESS_MEMBER_ID'];
$dashboardKey = isset($_GET['dashboard']) && $_GET['dashboard'] !== ''
? substr(trim($_GET['dashboard']), 0, 64)
: 'default';
try {
$connection = mysqli_connect($host, $username, $password, $database);
if (!$connection) {
throw new Exception('Database connection failed');
}
mysqli_set_charset($connection, 'utf8mb4');
$sql = 'SELECT id,
dashboard_key,
widget_type,
panel_size,
position_index,
tag_name,
display_label,
series_color,
preferred_axis,
update_interval_ms,
time_window_minutes,
rollup_function,
scale_min,
scale_max,
threshold_low,
threshold_high,
is_active,
config_json,
last_viewed_at,
created_at,
updated_at
FROM user_tag_dashboards
WHERE user_id = ?
AND dashboard_key = ?
AND is_active = 1
ORDER BY position_index ASC, id ASC';
$statement = mysqli_prepare($connection, $sql);
if (!$statement) {
throw new Exception('Query preparation failed');
}
mysqli_stmt_bind_param($statement, 'is', $userId, $dashboardKey);
mysqli_stmt_execute($statement);
$result = mysqli_stmt_get_result($statement);
if (!$result) {
throw new Exception('Query execution failed');
}
$widgets = [];
while ($row = mysqli_fetch_assoc($result)) {
$config = null;
if ($row['config_json']) {
$decoded = json_decode($row['config_json'], true);
$config = is_array($decoded) ? $decoded : null;
}
$widgets[] = [
'id' => (int) $row['id'],
'dashboard_key' => $row['dashboard_key'],
'widget_type' => $row['widget_type'],
'panel_size' => $row['panel_size'],
'position_index' => (int) $row['position_index'],
'tag_name' => $row['tag_name'],
'display_label' => $row['display_label'],
'series_color' => $row['series_color'],
'preferred_axis' => $row['preferred_axis'],
'update_interval_ms' => (int) $row['update_interval_ms'],
'time_window_minutes' => (int) $row['time_window_minutes'],
'rollup_function' => $row['rollup_function'],
'scale_min' => $row['scale_min'] !== null
? (float) $row['scale_min']
: null,
'scale_max' => $row['scale_max'] !== null
? (float) $row['scale_max']
: null,
'threshold_low' => $row['threshold_low'] !== null
? (float) $row['threshold_low']
: null,
'threshold_high' => $row['threshold_high'] !== null
? (float) $row['threshold_high']
: null,
'is_active' => (int) $row['is_active'],
'config' => $config,
'last_viewed_at' => $row['last_viewed_at'],
'created_at' => $row['created_at'],
'updated_at' => $row['updated_at'],
];
}
mysqli_stmt_close($statement);
mysqli_close($connection);
echo json_encode(
[
'success' => true,
'dashboard' => $dashboardKey,
'count' => count($widgets),
'widgets' => $widgets,
]
);
} catch (Exception $exception) {
if (isset($statement) && $statement) {
mysqli_stmt_close($statement);
}
if (isset($connection) && $connection) {
mysqli_close($connection);
}
http_response_code(500);
echo json_encode(
[
'success' => false,
'error' => $exception->getMessage(),
]
);
}
?>

View File

@@ -0,0 +1,84 @@
<?php
require "../includes/items.php";
if (!function_exists('renderTrendLink')) {
/**
* Create a clickable link that opens the auto-start trend view with the tag.
*
* @param string $tagKey Historian tag name to trend.
* @param array $values Collected value array from items include.
*
* @return string
*/
function renderTrendLink(string $tagKey, array $values): string
{
$tagValue = $values[$tagKey] ?? null;
$displayValue = $tagValue === null ? '--' : (string) $tagValue;
$displayValue = htmlspecialchars($displayValue, ENT_QUOTES, 'UTF-8');
$href = '../trends/live/autochart.php?primary=' .
rawurlencode($tagKey) .
'&autostart=1';
$encodedHref = htmlspecialchars($href, ENT_QUOTES, 'UTF-8');
return '<a class="trend-link" href="' .
$encodedHref .
'" target="_blank" rel="noopener noreferrer">' .
$displayValue .
'</a>';
}
}
?>
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">2500 kav</td>
</tr>
<tr>
<td width="50%" id="vtitle" id="padded">A Phase</td>
<td id="sum-count" width="100px">
<?php echo renderTrendLink('2500kva A Phase', $value); ?>
</td>
<td id="vtitle">kav</td>
</tr>
<tr>
<td id="vtitle" id="padded">B Phase</td>
<td id="sum-count" width="100px">
<?php echo renderTrendLink('2500kva B Phase', $value); ?>
</td>
<td id="vtitle">kav</td>
</tr>
<tr>
<td id="vtitle" id="padded">C Phase</td>
<td id="sum-count" width="100px">
<?php echo renderTrendLink('2500kva C Phase', $value); ?>
</td>
<td id="vtitle">kav</td>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">3750 kva</td>
</tr>
<tr>
<td width="50%" id="vtitle" id="padded">A Phase</td>
<td id="sum-count" width="100px">
<?php echo renderTrendLink('3750kva A Phase', $value); ?>
</td>
<td id="vtitle">kav</td>
</tr>
<tr>
<td id="vtitle" id="padded">B Phase</td>
<td id="sum-count" width="100px">
<?php echo renderTrendLink('3750kva B Phase', $value); ?>
</td>
<td id="vtitle">kav</td>
</tr>
<tr>
<td id="vtitle" id="padded">C Phase</td>
<td id="sum-count" width="100px">
<?php echo renderTrendLink('3750kva C Phase', $value); ?>
</td>
<td id="vtitle">kav</td>
</tr>
</table>

View File

@@ -0,0 +1,48 @@
<?php
$serverName = "SQLSERVER";
$uid = "crw";
$pwd = "rp02751";
$connectionInfo = array( "UID"=>$uid, "PWD"=>$pwd,'ReturnDatesAsStrings'=> true, "CharacterSet" => 'utf-8', "Database"=>"TruckTracking" );
/* Connect using SQL Server Authentication. */
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false )
{
echo "Unable to connect.</br>";
die( print_r( sqlsrv_errors(), true));
}
$sql = "SELECT * FROM DumpHistory ORDER by ScanDate DESC";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
?>
<html>
<head>
<title>RFID Truck Log</title>
</head>
<body>
<table>
<thead>
<tr>
<th>Load Number</th>
<th>Vehicle ID</th>
<th>Dump Location</th>
<th>Scan Date</th>
<th>Net Weight</th>
<th>Crop Day</th>
</tr>
</thead>
<?php while ($array=sqlsrv_fetch_array($stmt, SQLSRV_FETCH_NUMERIC)) {
echo "<td>".$array['LoadNo']."</td>";
echo "<td>".$array['VehicleId']."</td>";
echo "<td>".$array['DumpLocation']."</td>";
echo "<td>".$array['ScanDate']."</td>";
echo "<td>".$array['NetWt']."</td>";
echo "<td>".$array['CropDay']."</td>";
} ?>
</table>
</body>

View File

@@ -0,0 +1,204 @@
<?php
date_default_timezone_set('America/Chicago');
$curDate = date('l, M j, Y h:i:s a');
require "../includes/itemsAI.php";
require "../includes/apronFPM.php";
?>
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<tr >
<td id="datetime" colspan="4">
<?php echo $curDate; ?>
</td>
</tr>
<?php require __DIR__ . '/../includes/alerts.php'; ?>
<tr>
<td colspan="3" id="title">Southeast Table</td>
</tr>
<tr>
<td width="50%" id="vtitle" id="padded">PV:</a></td>
<td id="sum-count" width="100px"><?php echo $rounded['SE SCALE']; ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">SP1:</a></td>
<td id="sum-count" width="100px"><?php echo $rounded['STABLE SP1']; ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">SP2:</a></td>
<td id="sum-count" width="100px"><?php echo $rounded['STABLE SP3']; ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">OP:</a></td>
<td id="sum-count"><?php echo $rounded['SE OUTPUT']; ?></td>
<td id="vtitle">%</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">Control</a></td>
<td id="sum-count"> </td>
<?php
if ($value['SAM'] == 0) {
echo "<td id=\"gopen\">AUTO</td>";
}
if ($value['SAM'] == 1) {
echo "<td id=\"gclose\">MANUAL</td>";
}
?>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">Northeast Table</td>
</tr>
<tr>
<td width="50%" id="vtitle" id="padded">PV:</td>
<td id="sum-count" width="100px"><?php echo $rounded['NE SCALE']; ?></td>
<td id="vtitle">Tons</td>
</tr>
<tr>
<td id="vtitle" id="padded">SP1:</a></td>
<td id="sum-count" width="100px"><?php echo $rounded['NE SETPOINT']; ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">SP2:</a></td>
<td id="sum-count" width="100px"><?php echo $rounded['NE SETPOINT2']; ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">OP:</td>
<td id="sum-count"><?php echo $rounded['NE OUTPUT']; ?></td>
<td id="vtitle">%</td>
</tr>
<td id="vtitle" id="padded">Control</a></td>
<td id="sum-count"> </td>
<?php
if ($value['NAM'] == 0) {
echo "<td id=\"gopen\">AUTO</td>";
}
if ($value['NAM'] == 1) {
echo "<td id=\"gclose\">MANUAL</td>";
}
?>
</tr>
</table>
<table class="col-4" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">West Table</td>
</tr>
<tr>
<td width="50%" id="vtitle" id="padded">PV:</td>
<td id="sum-count" width="100px"><?php echo $rounded['SE SCALE']; ?></td>
<td id="vtitle">Tons</td>
</tr>
<tr>
<td id="vtitle" id="padded">SP1:</a></td>
<td id="sum-count" width="100px"><?php echo $rounded['W SETPOINT']; ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">SP2:</a></td>
<td id="sum-count" width="100px"><?php echo $rounded['W SETPOINT3']; ?></td>
<td id="vtitle">Tons</a></td>
</tr>
<tr>
<td id="vtitle" id="padded">OP:</td>
<td id="sum-count"><?php echo $rounded['W OUTPUT']; ?></td>
<td id="vtitle">%</td>
</tr>
<td id="vtitle" id="padded"></a></td>
<td id="sum-count"> </td>
<?php
if ($value['WAM'] == 0) {
echo "<td id=\"gopen\">AUTO</td>";
}
if ($value['WAM'] == 1) {
echo "<td id=\"gclose\">MANUAL</td>";
}
?>
</tr>
</table>
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<tr>
<td width="50%" id="vtitle" id="padded">MCC Tons:</td>
<td id="sum-count" width="100px"><?php echo $rounded['MCCTONS']; ?></td>
<td id="vtitle">Tons</td>
</tr>
</table>
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<tr>
<td colspan="3" id="title">West Truck Dump</td>
</tr>
<tr>
<td width="50%" id="vtitle" id="padded">BC-01 Ratio:</td>
<td id="sum-count" width="100px"><?php echo $rounded['BC01Ratio']; ?></td>
<td id="vtitle">LBS</td>
</tr>
<tr>
<td id="vtitle" id="padded">BC-02 Ratio:</td>
<td id="sum-count"><?php echo $value['BC02Ratio']; ?></td>
<td id="vtitle">%</td>
</tr>
<tr>
<td id="vtitle" id="padded">BC-09 Ratio:</td>
<td id="sum-count"><?php echo $value['BC09Ratio']; ?></td>
<td id="vtitle">%</td>
</tr>
<tr>
<td id="vtitle" id="padded">BC-09 Outout:</td>
<td id="sum-count"><?php echo $value['BC09 Output']; ?></td>
<td id="vtitle">%</td>
</tr>
<tr>
<td id="vtitle" id="padded">Apron Ratio:</td>
<td id="sum-count"><?php echo $rounded['WTDApronRatio']; ?></td>
<td id="vtitle">%</td>
</tr>
<tr>
<td id="vtitle" id="padded">Apron Outout:</td>
<td id="sum-count"><?php echo $rounded['WTDApronOutput']; ?></td>
<td id="vtitle">%</td>
</tr>
<tr>
<td id="vtitle" id="padded">Apron FPM:</td>
<td id="sum-count"><?php echo $etdApronFPM; ?></td>
<td id="vtitle">FPM</td>
</tr>
<tr>
<td colspan="3" id="title">East Truck Dump</td>
</tr>
<tr>
<td id="vtitle" id="padded">SP1:</td>
<td id="sum-count"><?php echo $rounded['NE SETPOINT']; ?></td>
<td id="vtitle">LBS</td>
</tr>
<tr>
<td id="vtitle" id="padded">SP2:</td>
<td id="sum-count"><?php echo $rounded['NE SETPOINT2']; ?></td>
<td id="vtitle">LBS</td>
</tr>
<tr>
<td id="vtitle" id="padded">Apron Ratio:</td>
<td id="sum-count"><?php echo $rounded['ETDApronRatio']; ?></td>
<td id="vtitle">%</td>
</tr>
<tr>
<td id="vtitle" id="padded">Apron Output:</td>
<td id="sum-count"><?php echo $rounded['ETDApronOutput']; ?></td>
<td id="vtitle">%</td>
</tr>
<tr>
<td id="vtitle" id="padded">Apron FPM:</td>
<td id="sum-count"><?php echo $wtdApronFPM; ?></td>
<td id="vtitle">FPM</td>
</tr>
</table>

View File

@@ -0,0 +1,92 @@
<?php // phpcs:ignoreFile
require __DIR__ . '/../session.php';
if (($_SESSION['SESS_MEMBER_LEVEL'] ?? '') !== 'controls') {
http_response_code(403);
header('Content-Type: application/json');
echo json_encode([
'success' => false,
'message' => 'Access denied.',
]);
exit;
}
require __DIR__ . '/../includes/control-tags.php';
require __DIR__ . '/../includes/kepware-rest.php';
header('Content-Type: application/json');
$idRaw = $_GET['id'] ?? '';
$id = is_string($idRaw) ? trim($idRaw) : '';
if ($id === '') {
http_response_code(400);
echo json_encode([
'success' => false,
'message' => 'A valid tag id is required.',
]);
exit;
}
$tag = control_tag_find($id);
if ($tag === null) {
http_response_code(404);
echo json_encode([
'success' => false,
'message' => 'Tag not configured for overrides.',
]);
exit;
}
try {
$read = kepware_read([$tag['id']]);
$result = $read[$tag['id']] ?? null;
if ($result === null) {
http_response_code(502);
echo json_encode([
'success' => false,
'message' => 'Kepware did not return data for the requested tag.',
]);
exit;
}
$rawValue = $result['value'] ?? null;
$timestamp = isset($result['timestamp']) && is_string($result['timestamp']) ? $result['timestamp'] : null;
$status = isset($result['status']) ? $result['status'] : null;
$numericValue = null;
if (is_numeric($rawValue)) {
$numericValue = (float) $rawValue;
}
$responseValue = $numericValue ?? $rawValue;
echo json_encode([
'success' => true,
'data' => [
'id' => $tag['id'],
'name' => $tag['name'],
'value' => $responseValue,
'control' => 1,
'type' => $tag['type_label'],
'control_mode' => $tag['control_mode'],
'source_idnumber' => $tag['config']['source'] ?? $tag['id'],
'timestamp' => $timestamp,
'displayTimestamp' => control_format_timestamp($timestamp),
'status' => $status,
'units' => $tag['units'] ?? null,
'description' => $tag['description'] ?? null,
],
]);
} catch (Throwable $exception) {
error_log('Kepware read failed: ' . $exception->getMessage());
http_response_code(502);
echo json_encode([
'success' => false,
'message' => 'Failed to read tag value from Kepware.',
'details' => $exception->getMessage(),
]);
}

View File

@@ -0,0 +1,269 @@
<?php // phpcs:ignoreFile
require __DIR__ . '/../session.php';
if (($_SESSION['SESS_MEMBER_LEVEL'] ?? '') !== 'controls') {
http_response_code(403);
header('Content-Type: application/json');
echo json_encode([
'success' => false,
'message' => 'Access denied.',
]);
exit;
}
if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
http_response_code(405);
header('Allow: POST');
header('Content-Type: application/json');
echo json_encode([
'success' => false,
'message' => 'Only POST requests are supported.',
]);
exit;
}
$sessionToken = $_SESSION['control_settings_csrf'] ?? '';
$headerToken = $_SERVER['HTTP_X_CSRF_TOKEN'] ?? '';
if ($sessionToken === '' || $headerToken === '' || !hash_equals($sessionToken, $headerToken)) {
http_response_code(403);
header('Content-Type: application/json');
echo json_encode([
'success' => false,
'message' => 'Security token mismatch.',
]);
exit;
}
require __DIR__ . '/../includes/control-tags.php';
require __DIR__ . '/../includes/kepware-rest.php';
require __DIR__ . '/../includes/control-logger.php';
header('Content-Type: application/json');
$payload = json_decode((string) file_get_contents('php://input'), true);
if (!is_array($payload)) {
http_response_code(400);
echo json_encode([
'success' => false,
'message' => 'Invalid request payload.',
]);
exit;
}
$idRaw = $payload['id'] ?? '';
$id = is_string($idRaw) ? trim($idRaw) : (is_numeric($idRaw) ? (string) $idRaw : '');
$hasDelta = array_key_exists('delta', $payload);
$hasValue = array_key_exists('value', $payload);
if ($id === '') {
http_response_code(400);
echo json_encode([
'success' => false,
'message' => 'A valid tag id is required.',
]);
exit;
}
$tag = control_tag_find($id);
if ($tag === null) {
http_response_code(404);
echo json_encode([
'success' => false,
'message' => 'Tag not configured for overrides.',
]);
exit;
}
$mode = $tag['control_mode'];
if (!$hasDelta && !$hasValue) {
http_response_code(400);
echo json_encode([
'success' => false,
'message' => 'Provide a delta or an explicit value to apply.',
]);
exit;
}
if ($mode === 'boolean' && $hasDelta) {
http_response_code(400);
echo json_encode([
'success' => false,
'message' => 'Boolean tags accept explicit values only.',
]);
exit;
}
$delta = null;
if ($hasDelta) {
$delta = filter_var($payload['delta'], FILTER_VALIDATE_FLOAT);
if ($delta === false || $delta === null) {
http_response_code(400);
echo json_encode([
'success' => false,
'message' => 'Delta must be numeric.',
]);
exit;
}
}
$valueInput = null;
if ($hasValue) {
$valueInput = $payload['value'];
}
try {
$currentRead = kepware_read([$tag['id']]);
$currentData = $currentRead[$tag['id']] ?? null;
$currentValue = null;
if ($currentData !== null && isset($currentData['value']) && is_numeric($currentData['value'])) {
$currentValue = (float) $currentData['value'];
}
$targetValue = null;
if ($mode === 'boolean') {
if (!$hasValue) {
throw new RuntimeException('Boolean tag updates must include a value of 0 or 1.');
}
$normalizedValue = null;
if (is_bool($valueInput)) {
$normalizedValue = $valueInput ? 1 : 0;
} elseif (is_numeric($valueInput)) {
$normalizedValue = (float) $valueInput >= 0.5 ? 1 : 0;
} elseif (is_string($valueInput)) {
$lower = strtolower(trim($valueInput));
if (in_array($lower, ['1', 'true', 'on', 'start'], true)) {
$normalizedValue = 1;
} elseif (in_array($lower, ['0', 'false', 'off', 'stop'], true)) {
$normalizedValue = 0;
}
}
if ($normalizedValue === null) {
throw new RuntimeException('Boolean value must be 0 or 1.');
}
$targetValue = $normalizedValue;
} else {
if ($hasValue) {
$filteredValue = filter_var($valueInput, FILTER_VALIDATE_FLOAT);
if ($filteredValue === false || $filteredValue === null) {
throw new RuntimeException('Value must be numeric.');
}
$targetValue = (float) $filteredValue;
} elseif ($delta !== null) {
if ($currentValue === null) {
throw new RuntimeException('Unable to apply a delta without a current value. Refresh and try again.');
}
$targetValue = $currentValue + $delta;
}
if ($targetValue === null) {
throw new RuntimeException('No numeric value provided.');
}
if (isset($tag['min']) && $tag['min'] !== null) {
$targetValue = max($targetValue, (float) $tag['min']);
}
if (isset($tag['max']) && $tag['max'] !== null) {
$targetValue = min($targetValue, (float) $tag['max']);
}
if (isset($tag['precision']) && $tag['precision'] !== null && $tag['precision'] >= 0) {
$targetValue = round($targetValue, (int) $tag['precision']);
}
}
$writePayload = [
[
'id' => $tag['id'],
'v' => $mode === 'boolean' ? (int) $targetValue : $targetValue,
],
];
$writeResults = kepware_write($writePayload);
$writeResult = $writeResults[0] ?? null;
$writeStatus = is_array($writeResult) && isset($writeResult['s']) ? $writeResult['s'] : null;
$writeError = is_array($writeResult) && isset($writeResult['error']) ? $writeResult['error'] : null;
if ($writeError !== null) {
throw new RuntimeException('Kepware write error: ' . $writeError);
}
if (is_string($writeStatus) && stripos($writeStatus, 'good') === false && stripos($writeStatus, 'ok') === false) {
throw new RuntimeException('Kepware write returned status: ' . $writeStatus);
}
$postRead = kepware_read([$tag['id']]);
$postData = $postRead[$tag['id']] ?? null;
$finalValue = $postData['value'] ?? $targetValue;
$finalNumericValue = is_numeric($finalValue) ? (float) $finalValue : null;
$finalTimestamp = isset($postData['timestamp']) && is_string($postData['timestamp']) ? $postData['timestamp'] : null;
$responseValue = $finalNumericValue ?? $finalValue;
$userNameParts = array_filter([
$_SESSION['SESS_FIRST_NAME'] ?? null,
$_SESSION['SESS_LAST_NAME'] ?? null,
]);
$userName = $userNameParts !== [] ? trim(implode(' ', $userNameParts)) : ($_SESSION['SESS_MEMBER_ID'] ?? 'controls-user');
$logEntry = [
'tag_id' => $tag['id'],
'tag_name' => $tag['name'],
'mode' => $mode,
'previous_value' => $currentValue,
'new_value' => $responseValue,
'requested_value' => $targetValue,
'delta' => $mode === 'boolean'
? (($targetValue ?? 0) - ($currentValue ?? 0))
: (($currentValue !== null && is_numeric($targetValue)) ? ($targetValue - $currentValue) : null),
'status' => $writeStatus ?? 'OK',
'message' => $writeError ?? ($writeStatus ?? 'OK'),
'username' => $userName,
'session_id' => session_id(),
'client_ip' => $_SERVER['REMOTE_ADDR'] ?? null,
];
$logResult = control_log_write($logEntry);
if (!$logResult['success']) {
$logMessage = $logResult['error'] ?? 'Unknown logging failure.';
error_log('Control write log persistence failed: ' . $logMessage);
}
echo json_encode([
'success' => true,
'data' => [
'id' => $tag['id'],
'name' => $tag['name'],
'value' => $responseValue,
'control' => 1,
'type' => $tag['type_label'],
'control_mode' => $mode,
'source_idnumber' => $tag['config']['source'] ?? $tag['id'],
'timestamp' => $finalTimestamp,
'displayTimestamp' => control_format_timestamp($finalTimestamp),
'status' => $writeStatus ?? null,
'units' => $tag['units'] ?? null,
'description' => $tag['description'] ?? null,
],
'log' => $logResult,
]);
} catch (Throwable $exception) {
error_log('Tag control update failed: ' . $exception->getMessage());
http_response_code(500);
echo json_encode([
'success' => false,
'message' => 'Failed to update tag value.',
'details' => $exception->getMessage(),
]);
}

View File

@@ -0,0 +1,133 @@
<?php
date_default_timezone_set('America/Chicago');
$curDate = date('l, M j, Y h:i:s a');
require "../includes/items.php";
// Read cached truck dump stats (refreshed every 60s by cron)
$con = mysqli_connect('192.168.0.10', 'corey', '41945549', 'controls');
$cache = null;
if ($con) {
$result = mysqli_query($con, "SELECT * FROM truckdump_stats_cache WHERE id = 1");
if ($result) {
$cache = mysqli_fetch_assoc($result);
}
mysqli_close($con);
}
// Fallback values if cache is empty
$eastSinceLast = $cache['east_since_last'] ?? '--:--:--';
$eastBetween = $cache['east_between_dumps'] ?? '--:--:--';
$eastAvg = $cache['east_avg_10'] ?? '--:--:--';
$west1SinceLast = $cache['west1_since_last'] ?? '--:--:--';
$west1Between = $cache['west1_between_dumps'] ?? '--:--:--';
$west1Avg = $cache['west1_avg_10'] ?? '--:--:--';
$west2SinceLast = $cache['west2_since_last'] ?? '--:--:--';
$west2Between = $cache['west2_between_dumps'] ?? '--:--:--';
$west2Avg = $cache['west2_avg_10'] ?? '--:--:--';
$updated_at = $cache['updated_at'] ?? 'Unknown';
?>
<table width="100%" border="1" cellspacing="0" cellpadding="2">
<tr >
<td id="datetime" colspan="4">
<?php echo $curDate; ?>
</td>
</tr>
<?php require __DIR__ . '/../includes/alerts.php'; ?>
<tr>
<td id="vtitle" id="padded">Last Update:</a></td>
<td id="sum-count"colspan="2"><?php echo $updated_at; ?></td>
</tr>
<tr>
<td colspan="3" id="title">Dumps Combined Totals</td>
</tr>
<tr>
<td id="vtitle" id="padded">24hr Total Dumps:</a></td>
<td id="sum-count"colspan="2"><?php echo (($value['24hrnorth'])+($value['24hrsouth'])+($value['24hrwest2'])); ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">YTD Total Dumps:</a></td>
<td id="sum-count" colspan="2"><?php echo (($value['totnorth'])+($value['totsouth'])+($value['totwest2'])); ?></td>
</tr>
<tr>
<tr>
<td colspan="3" id="title">East Truck Dump</td>
</tr>
<tr>
<td id="vtitle" id="padded">24hr Total Dumps:</a></td>
<td id="sum-count"colspan="2"><?php echo $value['24hrnorth']; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">YTD Total Dumps:</a></td>
<td id="sum-count" colspan="2"><?php echo $value['totnorth']; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">Time Since Last Dump:</a></td>
<td id="sum-count" colspan="2"><?php echo $eastSinceLast; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">Average Between Last 10 Dumps</a></td>
<td id="sum-count" colspan="2"><?php echo $eastAvg; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">Time Between Dumps:</a></td>
<td id="sum-count" colspan="2"><?php echo $eastBetween; ?></td>
</tr>
<tr>
<td colspan="3" id="title"> West Truck Dump 1</td>
</tr>
<tr>
<td id="vtitle" id="padded">24hr Total Dumps:</a></td>
<td id="sum-count" colspan="2"><?php echo $value['24hrsouth']; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">YTD Total Dumps:</a></td>
<td id="sum-count" colspan="2"><?php echo $value['totsouth']; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">Time Since Last Dump:</a></td>
<td id="sum-count" colspan="2"><?php echo $west1SinceLast; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">Average Between Last 10 Dumps</a></td>
<td id="sum-count" colspan="2"><?php echo $west1Avg; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">Time Between Dumps:</a></td>
<td id="sum-count" colspan="2"><?php echo $west1Between; ?></td>
</tr><tr>
<td colspan="3" id="title"> West Truck Dump 2</td>
</tr>
<tr>
<td id="vtitle" id="padded">24hr Total Dumps:</a></td>
<td id="sum-count" colspan="2"><?php echo $value['24hrwest2']; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">YTD Total Dumps:</a></td>
<td id="sum-count" colspan="2"><?php echo $value['totwest2']; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">Time Since Last Dump:</a></td>
<td id="sum-count" colspan="2"><?php echo $west2SinceLast; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">Average Between Last 10 Dumps</a></td>
<td id="sum-count" colspan="2"><?php echo $west2Avg; ?></td>
</tr>
<tr>
<td id="vtitle" id="padded">Time Between Dumps:</a></td>
<td id="sum-count" colspan="2"><?php echo $west2Between; ?></td>
</tr>
</table>