ordersprinter/php/commonutils.php

121 lines
3.6 KiB
PHP
Raw Normal View History

2020-11-19 22:44:19 +01:00
<?php
require_once ('dbutils.php');
class CommonUtils {
var $dbutils;
function __construct() {
$this->dbutils = new DbUtils();
// $this->products = new Products(); --> endless loop!
// $this->lastSettingOfDisplayMode = "all";
}
function createGridTableWithSqrtSizeOfButtons ($inputArray) {
// create a table that is optimal (sqrt-like size)
$numberOfIcons = count($inputArray);
if ($numberOfIcons == 0) {
// no items to display
return;
}
$numberOfCols = ceil(sqrt($numberOfIcons));
$porcentageWidth = floor(100/$numberOfCols);
echo '<table class=gridtable>';
$colcounter = 0;
for ($index=0;$index<$numberOfIcons;$index++) {
if ($colcounter == 0) {
echo "<tr><td>";
}
$anEntry = $inputArray[$index];
$textOfButton = $anEntry["textOfButton"]; #
$onClickMethod = $anEntry["onClickMethod"]; // With parameters!
$button = '<input type="button" value="' . $textOfButton . '"';
$button = $button . ' onclick="' . $onClickMethod . '"';
$button = $button . ' style="height: 50px; width:' . $porcentageWidth . '%; font-size:20px; background-color:#b3b3c9" />';
echo $button;
$colcounter++;
if ($colcounter == $numberOfCols) {
$colcounter = 0;
echo "</tr>";
}
}
echo "</tr>";
echo "</table>";
}
function createGridTableWithSqrtSizeOfStyleButtons($inputArray) {
$this->createGridTableWithSqrtSizeOfStyleButtonsAndHeader($inputArray,'','dummy');
}
function getTableNameFromId($tableid) {
$sql = "SELECT tableno FROM " . DB_RESTTABLES_TABLE . " WHERE id=". $tableid;
$dbresult = $this->dbutils->performSqlCommand($sql);
$zeile = mysqli_fetch_array( $dbresult, MYSQL_ASSOC);
$tablename = $zeile['tableno'];
mysqli_free_result( $dbresult );
return $tablename;
}
function getCurrentPriceLevel() {
$sql = "SELECT setting FROM %config% WHERE name='pricelevel'";
$dbresult = $this->dbutils->performSqlCommand($sql);
$zeile = mysqli_fetch_array( $dbresult, MYSQL_ASSOC);
$pricelevelid = $zeile['setting'];
mysqli_free_result( $dbresult );
$sql = "SELECT id,name FROM %pricelevel% WHERE id=$pricelevelid";
$dbresult = $this->dbutils->performSqlCommand($sql);
$zeile = mysqli_fetch_array( $dbresult, MYSQL_ASSOC);
$pricelevelname = $zeile['name'];
mysqli_free_result( $dbresult );
return (array("id" => $pricelevelid, "name" => $pricelevelname));
}
function createGridTableWithSqrtSizeOfStyleButtonsAndHeader ($inputArray,$headline,$headercolor) {
// create a table that is optimal (sqrt-like size)
$numberOfIcons = count($inputArray);
if ($numberOfIcons == 0) {
// no items to display
return;
}
$numberOfCols = ceil(sqrt($numberOfIcons));
$porcentageWidth = floor(100.0/$numberOfCols);
echo '<table class=gridtable>';
// Headline
if ($headline <> '') {
echo '<tr><th style="background-color:#' . $headercolor . '">' . $headline . '</th>';
}
$colcounter = 0;
for ($index=0;$index<$numberOfIcons;$index++) {
if ($colcounter == 0) {
echo "<tr><td>";
}
$anEntry = $inputArray[$index];
$textOfButton = $anEntry["textOfButton"]; #
$onClickMethod = $anEntry["onClickMethod"]; // With parameters!
$style = $anEntry["style"];
$button = '<input type="button" value="' . $textOfButton . '"';
$button = $button . ' onclick="' . $onClickMethod . '"';
$button = $button . ' style="' . $style . '; width:' . $porcentageWidth . '%;" />';
echo $button;
$colcounter++;
if ($colcounter == $numberOfCols) {
$colcounter = 0;
echo "</tr>";
}
}
echo "</tr>";
echo "</table>";
}
}
?>