OrderSprinter 1.5.29

This commit is contained in:
Geno 2020-11-19 23:12:48 +01:00
parent ca318485c9
commit 6cdd0aad83
42 changed files with 439 additions and 245 deletions

View File

@ -9,8 +9,8 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" href="css/gueststyle.css?v=1.5.28" /> <link rel="stylesheet" href="css/gueststyle.css?v=1.5.29" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/orderstyle.min.css?v=1.5.28" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/orderstyle.min.css?v=1.5.29" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
<link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" /> <link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" />
<script src="php/3rdparty/jquery-1.11.3.min.js"></script> <script src="php/3rdparty/jquery-1.11.3.min.js"></script>
@ -113,7 +113,7 @@
<div data-role="footer" data-theme="b" id="thefooter1"> <div data-role="footer" data-theme="b" id="thefooter1">
<div class="ui-grid-a"> <div class="ui-grid-a">
<div class="ui-block-a">&nbsp;&nbsp;OrderSprinter</div> <div class="ui-block-a">&nbsp;&nbsp;OrderSprinter</div>
<div class="ui-block-b grid_right" id="versioninfo">1.5.28&nbsp;&nbsp;</div> <div class="ui-block-b grid_right" id="versioninfo">1.5.29&nbsp;&nbsp;</div>
</div><!-- /grid-a --> </div><!-- /grid-a -->
</div> </div>
</div> </div>

View File

@ -114,10 +114,10 @@ if (isset($_POST['code'])) {
} else { } else {
echo "<html>"; echo "<html>";
echo "<head><title>Installation Gastsystem</title>"; echo "<head><title>Installation Gastsystem</title>";
echo '<link rel="stylesheet" type="text/css" href="css/gueststyle.css?v=1.5.28">'; echo '<link rel="stylesheet" type="text/css" href="css/gueststyle.css?v=1.5.29">';
echo "</head>"; echo "</head>";
echo "<body><div class=surround>"; echo "<body><div class=surround>";
echo "<span class=headerline>Installation OrderSprinter-Gastsystem 1.5.28</span><br><br>"; echo "<span class=headerline>Installation OrderSprinter-Gastsystem 1.5.29</span><br><br>";
echo "<form action='install.php' method='post'><input class=installfield name=code id=code type=text placeholder='Installationscode' />"; echo "<form action='install.php' method='post'><input class=installfield name=code id=code type=text placeholder='Installationscode' />";
echo "<br><input type=submit value='Installation starten' class=installbtn />"; echo "<br><input type=submit value='Installation starten' class=installbtn />";
echo "</form></div></html>"; echo "</form></div></html>";

View File

@ -85,7 +85,7 @@ class Installer {
} }
Database::dropTables($pdo); Database::dropTables($pdo);
Database::createEmptyTables($pdo, $prefix); Database::createEmptyTables($pdo, $prefix);
Database::setVersion($pdo,$prefix,"1.5.28"); Database::setVersion($pdo,$prefix,"1.5.29");
Database::setAccessPassword($pdo,$prefix,$adminpass); Database::setAccessPassword($pdo,$prefix,$adminpass);
Database::setRefreshRate($pdo,$prefix,"5"); // default: 5 times per hour Database::setRefreshRate($pdo,$prefix,"5"); // default: 5 times per hour
return array("status" => "OK","msg" => "Installation successful"); return array("status" => "OK","msg" => "Installation successful");

Binary file not shown.

View File

@ -5,7 +5,7 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" /> <link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
@ -13,8 +13,8 @@
<link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" /> <link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" />
<script src="php/3rdparty/jquery-2.0.3.min.js"></script> <script src="php/3rdparty/jquery-2.0.3.min.js"></script>
<script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script> <script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
<script src="kitchenbar.js?v=1.5.28"></script> <script src="kitchenbar.js?v=1.5.29"></script>
<style> <style>
#tableWithEntriesToCook,#tableWithCookedEntries,#headertableToCook #tableWithEntriesToCook,#tableWithCookedEntries,#headertableToCook

View File

@ -5,7 +5,7 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" /> <link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
@ -21,7 +21,7 @@
<link rel="stylesheet" href="php/3rdparty/jqueryui1-11-4/jquery-ui.min.css" /> <link rel="stylesheet" href="php/3rdparty/jqueryui1-11-4/jquery-ui.min.css" />
<script src="php/3rdparty/jqueryui1-11-4/jquery-ui.min.js"></script> <script src="php/3rdparty/jqueryui1-11-4/jquery-ui.min.js"></script>
<script src="php/3rdparty/jqueryui1-11-4/jquery-ui-i18n.min.js"></script> <script src="php/3rdparty/jqueryui1-11-4/jquery-ui-i18n.min.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
<script src="receiptutils.js"></script> <script src="receiptutils.js"></script>
<script> <script>
@ -198,7 +198,7 @@ function doAjaxCancelDeleteBill(billid,stornocode,reason) {
} }
function cancelBill(jsonText) { function cancelBill(jsonText) {
if (jsonText.status != "OK") { if (jsonText.status != "OK") {
alert("Fehler " + jsonText.code + ": " + jsonText.msg); alert("Fehler: " + jsonText.code + ": " + jsonText.msg);
return; return;
} }
setTimeout(function(){location.reload()},1000); setTimeout(function(){location.reload()},1000);

View File

@ -7,7 +7,7 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" /> <link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
@ -23,7 +23,7 @@
<link rel="stylesheet" href="php/3rdparty/jqueryui1-11-4/jquery-ui.min.css" /> <link rel="stylesheet" href="php/3rdparty/jqueryui1-11-4/jquery-ui.min.css" />
<script src="php/3rdparty/jqueryui1-11-4/jquery-ui.min.js"></script> <script src="php/3rdparty/jqueryui1-11-4/jquery-ui.min.js"></script>
<script src="php/3rdparty/jqueryui1-11-4/jquery-ui-i18n.min.js"></script> <script src="php/3rdparty/jqueryui1-11-4/jquery-ui-i18n.min.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
<script src="elements/customers.js"></script> <script src="elements/customers.js"></script>
</head> </head>
@ -73,7 +73,7 @@ var CUS_GUESTINFO = ["Angabe zum Gast","Guest info","Información del client"];
var CUS_DECLAREPAY = ["Deklariere bezahlt","Declare paid","Declarar pagado"]; var CUS_DECLAREPAY = ["Deklariere bezahlt","Declare paid","Declarar pagado"];
var CUS_DECLAREUNPAY = ["Deklariere unbezahlt","Declare unpaid","Declarar no pagado"]; var CUS_DECLAREUNPAY = ["Deklariere unbezahlt","Declare unpaid","Declarar no pagado"];
var CUS_PRINTBILL = ["Drucken","Print","Imprimir"]; var CUS_PRINTBILL = ["Drucken","Print","Imprimir"];
var CUS_DECLARE_ALL_PAY = ["Alle als bezahlt deklarieren","Declare all as paid","Declarar todo pagado"]; var CUS_DECLARE_ALL_PAY = ["Alle unbezahlten Bons als bezahlt deklarieren","Declare all unpaid receipts as paid","Declarar todo pagado"];
var CUS_PRINT_ALL = ["Alle Bons drucken","Print all receipts","Imprimir todos los tiquetes"]; var CUS_PRINT_ALL = ["Alle Bons drucken","Print all receipts","Imprimir todos los tiquetes"];
var CUS_REPORT = ["Report über alle offenen Rechnungen","Report about all open bills","Resumen de todos las facturas non-pagadas"]; var CUS_REPORT = ["Report über alle offenen Rechnungen","Report about all open bills","Resumen de todos las facturas non-pagadas"];
var CUS_FILTER_OPEN_BILLS = ["Filter Gäste mit offenen Rechnungen","Filter on customers with ooen bills","Filtrar clientes con tiquets non-pagados"]; var CUS_FILTER_OPEN_BILLS = ["Filter Gäste mit offenen Rechnungen","Filter on customers with ooen bills","Filtrar clientes con tiquets non-pagados"];
@ -87,6 +87,7 @@ var CUS_PLACEHOLDER_HINT = ["Im Text können die Platzhalter {NAME}, {ANREDE}, {
"You can use {NAME}, {ANREDE}, {GRUSS} as placeholder for the name, the salutation or the greeting in the text.", "You can use {NAME}, {ANREDE}, {GRUSS} as placeholder for the name, the salutation or the greeting in the text.",
"En el texto se puede usar {NAME}, {ANREDE}, {GRUSS} para sustituir nombre, encabezamiento o abrazo."]; "En el texto se puede usar {NAME}, {ANREDE}, {GRUSS} para sustituir nombre, encabezamiento o abrazo."];
var CUS_GUEST_ACT_ALL = ["Aktionen für alle Gäste","Actions on all guests","Acciones para todos los huespedes"]; var CUS_GUEST_ACT_ALL = ["Aktionen für alle Gäste","Actions on all guests","Acciones para todos los huespedes"];
var CUS_CLOSED = ["abgeschlossen","closed","cerrado"];
var l = 0; var l = 0;

View File

@ -4,7 +4,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" href="css/ospage.css" /> <link rel="stylesheet" href="css/ospage.css" />
@ -17,7 +17,7 @@
<script src="php/3rdparty/jquery-2.0.3.min.js"></script> <script src="php/3rdparty/jquery-2.0.3.min.js"></script>
<script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script> <script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
<script src="receiptutils.js"></script> <script src="receiptutils.js"></script>
<script src="elements/dash.js"></script> <script src="elements/dash.js"></script>
<script src="php/3rdparty/Chart.bundle.min.js"></script> <script src="php/3rdparty/Chart.bundle.min.js"></script>

File diff suppressed because one or more lines are too long

View File

@ -4,7 +4,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" /> <link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
@ -12,7 +12,7 @@
<link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" /> <link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" />
<script src="php/3rdparty/jquery-2.0.3.min.js"></script> <script src="php/3rdparty/jquery-2.0.3.min.js"></script>
<script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script> <script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
<script src="kitchenbar.js"></script> <script src="kitchenbar.js"></script>
<style> <style>

View File

@ -9,8 +9,8 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" type="text/css" href="css/numfield.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/numfield.css?v=1.5.29">
<link rel="stylesheet" href="php/3rdparty/orderstyle/orderstyle.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/orderstyle.min.css" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
@ -18,7 +18,7 @@
<link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" /> <link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" />
<script src="php/3rdparty/jquery-2.0.3.min.js"></script> <script src="php/3rdparty/jquery-2.0.3.min.js"></script>
<script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script> <script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
</head> </head>
<body> <body>

View File

@ -9,8 +9,8 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" type="text/css" href="css/numfield.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/numfield.css?v=1.5.29">
<link rel="stylesheet" href="php/3rdparty/orderstyle/orderstyle.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/orderstyle.min.css" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
@ -18,7 +18,7 @@
<link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" /> <link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" />
<script src="php/3rdparty/jquery-2.0.3.min.js"></script> <script src="php/3rdparty/jquery-2.0.3.min.js"></script>
<script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script> <script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
</head> </head>
<body> <body>
@ -231,7 +231,7 @@ function handleResultOfInstallCheck(is_installed) {
if (is_installed == "Yes") { if (is_installed == "Yes") {
useInstallation(); useInstallation();
} else { } else {
setTimeout(function(){document.location.href = "install.html?v=1.5.28"},500); setTimeout(function(){document.location.href = "install.html?v=1.5.29"},500);
} }
} }
@ -285,11 +285,11 @@ $(document).on("pageinit", "#index-page", function () {
<div data-role="content"> <div data-role="content">
<p><div id="toplogolocation" style="text-align: center;display:none;"><img src="php/contenthandler.php?module=printqueue&command=getLogoAsPngWithAlphaChannel&v=1.5.28&style=always" style="max-height:150px;"/></div> <p><div id="toplogolocation" style="text-align: center;display:none;"><img src="php/contenthandler.php?module=printqueue&command=getLogoAsPngWithAlphaChannel&v=1.5.29&style=always" style="max-height:150px;"/></div>
<div data-role="collapsible" data-content-theme="c" data-collapsed="false" data-theme="e" id="loginmask"> <div data-role="collapsible" data-content-theme="c" data-collapsed="false" data-theme="e" id="loginmask">
<H2>Anmelden</H2> <H2>Anmelden</H2>
<p><div id="middlelogolocation" style="text-align: left;padding-left: 80px;padding-right:80px;display:none;"><img src="php/contenthandler.php?module=printqueue&command=getLogoAsPngWithAlphaChannel&v=1.5.28&style=always" style="max-height:150px;"/></div> <p><div id="middlelogolocation" style="text-align: left;padding-left: 80px;padding-right:80px;display:none;"><img src="php/contenthandler.php?module=printqueue&command=getLogoAsPngWithAlphaChannel&v=1.5.29&style=always" style="max-height:150px;"/></div>
<form method="post"> <form method="post">
<table border=0> <table border=0>

View File

@ -916,7 +916,7 @@ El servicio web OrderSprinter no requiere una conexión a Internet. Sin embargo,
<tr id=updateline> <tr id=updateline>
<td>&nbsp;</td> <td>&nbsp;</td>
<td align=center> <td align=center>
<button id="updatebtn">Update -> 1.5.28</button> <button id="updatebtn">Update -> 1.5.29</button>
<span id="updateinprogresstxt" style="display:none;"><img id="installprogressindicator" src="php/3rdparty/images/ajax-loader.gif" alt="Progress indication" style="display:none;"/> Update... bitte warten.</span> <span id="updateinprogresstxt" style="display:none;"><img id="installprogressindicator" src="php/3rdparty/images/ajax-loader.gif" alt="Progress indication" style="display:none;"/> Update... bitte warten.</span>
</td> </td>
<td>&nbsp;</td> <td>&nbsp;</td>

View File

@ -455,7 +455,7 @@ return;
} }
set_time_limit(60*30); set_time_limit(60*30);
$installerVersion = "1.5.28"; $installerVersion = "1.5.29";
$admin = new InstallAdmin(); $admin = new InstallAdmin();
$pdo = $admin->openDbAndReturnPdo($_POST['host'],$_POST['db'],$_POST['user'],$_POST['password']); $pdo = $admin->openDbAndReturnPdo($_POST['host'],$_POST['db'],$_POST['user'],$_POST['password']);

View File

@ -5,7 +5,7 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" /> <link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
@ -13,8 +13,8 @@
<link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" /> <link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" />
<script src="php/3rdparty/jquery-2.0.3.min.js"></script> <script src="php/3rdparty/jquery-2.0.3.min.js"></script>
<script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script> <script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
<script src="kitchenbar.js?v=1.5.28"></script> <script src="kitchenbar.js?v=1.5.29"></script>
<style> <style>
#tableWithEntriesToCook,#tableWithCookedEntries,#headertableToCook #tableWithEntriesToCook,#tableWithCookedEntries,#headertableToCook

View File

@ -5,7 +5,7 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" /> <link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
@ -13,10 +13,10 @@
<link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" /> <link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" />
<script src="php/3rdparty/jquery-1.11.3.min.js"></script> <script src="php/3rdparty/jquery-1.11.3.min.js"></script>
<script src="php/3rdparty/jquery.mobile-1.4.5.min.js"></script> <script src="php/3rdparty/jquery.mobile-1.4.5.min.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
<script src="elements/tablemap.js?v=1.5.28"></script> <script src="elements/tablemap.js?v=1.5.29"></script>
<script src="elements/roommap.js?v=1.5.28"></script> <script src="elements/roommap.js?v=1.5.29"></script>
<script src="elements/groundplan.js?v=1.5.28"></script> <script src="elements/groundplan.js?v=1.5.29"></script>
<link href="php/3rdparty/hayageek_uploadfile.css" rel="stylesheet"> <link href="php/3rdparty/hayageek_uploadfile.css" rel="stylesheet">
<script src="php/3rdparty/hayageek_jquery_uploadfile.js"></script> <script src="php/3rdparty/hayageek_jquery_uploadfile.js"></script>
@ -1667,7 +1667,7 @@ function initRestoreFileUpload() {
} else { } else {
alert("Import war erfolgreich."); alert("Import war erfolgreich.");
setTimeout(function(){ setTimeout(function(){
document.location.href = "index.html?v=1.5.28"; document.location.href = "index.html?v=1.5.29";
},250); },250);
} }
}, },
@ -2140,38 +2140,38 @@ function binding() {
$("#backup_btn").off("click").on("click", function (e) { $("#backup_btn").off("click").on("click", function (e) {
e.stopImmediatePropagation(); e.stopImmediatePropagation();
e.preventDefault(); e.preventDefault();
window.location.href = "php/contenthandler.php?module=admin&command=backup&type=configuration&v=1.5.28"; window.location.href = "php/contenthandler.php?module=admin&command=backup&type=configuration&v=1.5.29";
}); });
$("#backup_btnall").off("click").on("click", function (e) { $("#backup_btnall").off("click").on("click", function (e) {
e.stopImmediatePropagation(); e.stopImmediatePropagation();
e.preventDefault(); e.preventDefault();
window.location.href = "php/contenthandler.php?module=admin&command=backup&type=all&v=1.5.28"; window.location.href = "php/contenthandler.php?module=admin&command=backup&type=all&v=1.5.29";
}); });
$("#backup_btnalllogs").off("click").on("click", function (e) { $("#backup_btnalllogs").off("click").on("click", function (e) {
e.stopImmediatePropagation(); e.stopImmediatePropagation();
e.preventDefault(); e.preventDefault();
window.location.href = "php/contenthandler.php?module=admin&command=backup&type=alllogs&v=1.5.28"; window.location.href = "php/contenthandler.php?module=admin&command=backup&type=alllogs&v=1.5.29";
}); });
$("#backup_btnftpall").off("click").on("click", function (e) { $("#backup_btnftpall").off("click").on("click", function (e) {
e.stopImmediatePropagation(); e.stopImmediatePropagation();
e.preventDefault(); e.preventDefault();
showProgressPopup(); showProgressPopup();
doAjax("GET","php/contenthandler.php?module=admin&command=ftpbackup&type=all&v=1.5.28",null,handleFtpResult,null); doAjax("GET","php/contenthandler.php?module=admin&command=ftpbackup&type=all&v=1.5.29",null,handleFtpResult,null);
}); });
$("#backup_debugdata").off("click").on("click", function (e) { $("#backup_debugdata").off("click").on("click", function (e) {
e.stopImmediatePropagation(); e.stopImmediatePropagation();
e.preventDefault(); e.preventDefault();
window.open("php/contenthandler.php?module=admin&command=backup&type=debugdata&v=1.5.28",'_blank'); window.open("php/contenthandler.php?module=admin&command=backup&type=debugdata&v=1.5.29",'_blank');
}); });
$("#backupguests_btn").off("click").on("click", function (e) { $("#backupguests_btn").off("click").on("click", function (e) {
e.stopImmediatePropagation(); e.stopImmediatePropagation();
e.preventDefault(); e.preventDefault();
window.location.href = "php/contenthandler.php?module=admin&command=backup&type=confandguests&v=1.5.28"; window.location.href = "php/contenthandler.php?module=admin&command=backup&type=confandguests&v=1.5.29";
}); });
$("#golive").off("click").on("click", function (e) { $("#golive").off("click").on("click", function (e) {
@ -2352,7 +2352,7 @@ function updateOneSingleFile() {
setTimeout(function(){ setTimeout(function(){
$("#sliderarea").hide(); $("#sliderarea").hide();
var millis=getMillis(); var millis=getMillis();
document.location.href = "install.html?v=1.5.28&mode=onlyupdate&n=" + millis; document.location.href = "install.html?v=1.5.29&mode=onlyupdate&n=" + millis;
},250); },250);
} }
} }

File diff suppressed because one or more lines are too long

View File

@ -418,9 +418,11 @@ class Admin {
} }
private function isPrinterServerActive() { private function isPrinterServerActive() {
$pdo = DbUtils::openDbAndReturnPdoStatic(false);
$tasksForMe = Tasks::areThereTasksForMe($pdo);
$active = json_encode(array("status" => "OK", "msg" => 1, "tasksforme" => $tasksForMe)); $active = json_encode(array("status" => "OK", "msg" => 1, "tasksforme" => $tasksForMe));
$notActive = json_encode(array("status" => "OK", "msg" => 0, "tasksforme" => $tasksForMe)); $notActive = json_encode(array("status" => "OK", "msg" => 0, "tasksforme" => $tasksForMe));
$pdo = DbUtils::openDbAndReturnPdoStatic(false);
if (is_null($pdo)) { if (is_null($pdo)) {
echo $notActive; echo $notActive;
return; return;
@ -429,9 +431,7 @@ class Admin {
Guestsync::sync($pdo); Guestsync::sync($pdo);
$tasksForMe = Tasks::areThereTasksForMe($pdo);
$TIMEOUT = 40; $TIMEOUT = 40;
// check printmode // check printmode
@ -1419,7 +1419,7 @@ class Admin {
$view = "preferences.html"; $view = "preferences.html";
} }
echo json_encode($view . "?v=1.5.28"); echo json_encode($view . "?v=1.5.29");
} }
} }
@ -1640,31 +1640,31 @@ class Admin {
if (!self::isOnlyRatingUser($rights, $right_rating, true)) { if (!self::isOnlyRatingUser($rights, $right_rating, true)) {
if ($_SESSION['modus'] == 0) { if ($_SESSION['modus'] == 0) {
if ($_SESSION['right_waiter']) { $mainMenu[] = array("name" => $waitertxt[$lang], "link" => "waiter.html?v=1.5.28"); } if ($_SESSION['right_waiter']) { $mainMenu[] = array("name" => $waitertxt[$lang], "link" => "waiter.html?v=1.5.29"); }
} else { } else {
if ($_SESSION['right_waiter']) { $mainMenu[] = array("name" => $waiterdesktxt[$lang], "link" => "waiterdesktop.php?v=1.5.28"); } if ($_SESSION['right_waiter']) { $mainMenu[] = array("name" => $waiterdesktxt[$lang], "link" => "waiterdesktop.php?v=1.5.29"); }
} }
if ($_SESSION['right_kitchen']) { $mainMenu[] = array("name" => $kitchentxt[$lang], "link" => "kitchen.html?v=1.5.28"); } if ($_SESSION['right_kitchen']) { $mainMenu[] = array("name" => $kitchentxt[$lang], "link" => "kitchen.html?v=1.5.29"); }
if ($_SESSION['right_bar']) { $mainMenu[] = array("name" => "Bar", "link" => "bar.html?v=1.5.28"); } if ($_SESSION['right_bar']) { $mainMenu[] = array("name" => "Bar", "link" => "bar.html?v=1.5.29"); }
if ($_SESSION['right_supply']) { $mainMenu[] = array("name" => $supplytxt[$lang], "link" => "supplydesk.html?v=1.5.28"); } if ($_SESSION['right_supply']) { $mainMenu[] = array("name" => $supplytxt[$lang], "link" => "supplydesk.html?v=1.5.29"); }
if ($_SESSION['modus'] == 0) { if ($_SESSION['modus'] == 0) {
if ($_SESSION['right_paydesk']) { $mainMenu[] = array("name" => $paydesktxt[$lang], "link" => "paydesk.html?v=1.5.28"); } if ($_SESSION['right_paydesk']) { $mainMenu[] = array("name" => $paydesktxt[$lang], "link" => "paydesk.html?v=1.5.29"); }
} }
if ($_SESSION['right_statistics']) { $mainMenu[] = array("name" => $stattxt[$lang], "link" => "reports.html?v=1.5.28"); } if ($_SESSION['right_statistics']) { $mainMenu[] = array("name" => $stattxt[$lang], "link" => "reports.html?v=1.5.29"); }
if ($_SESSION['right_bill']) { $mainMenu[] = array("name" => $bontxt[$lang], "link" => "bill.html?v=1.5.28"); } if ($_SESSION['right_bill']) { $mainMenu[] = array("name" => $bontxt[$lang], "link" => "bill.html?v=1.5.29"); }
if ($_SESSION['right_products']) { $mainMenu[] = array("name" => $prodtxt[$lang], "link" => "products.html?v=1.5.28"); } if ($_SESSION['right_products']) { $mainMenu[] = array("name" => $prodtxt[$lang], "link" => "products.html?v=1.5.29"); }
if ($_SESSION['right_reservation']) { $mainMenu[] = array("name" => $restxt[$lang], "link" => "reservation.html?v=1.5.28"); } if ($_SESSION['right_reservation']) { $mainMenu[] = array("name" => $restxt[$lang], "link" => "reservation.html?v=1.5.29"); }
if ($_SESSION['right_tasks'] || $_SESSION['right_tasksmanagement']) { $mainMenu[] = array("name" => $taskstxt[$lang], "link" => "tasks.html?v=1.5.28"); } if ($_SESSION['right_tasks'] || $_SESSION['right_tasksmanagement']) { $mainMenu[] = array("name" => $taskstxt[$lang], "link" => "tasks.html?v=1.5.29"); }
if ($_SESSION['right_rating']) { $mainMenu[] = array("name" => $ratingtxt[$lang], "link" => "rating.html?v=1.5.28"); } if ($_SESSION['right_rating']) { $mainMenu[] = array("name" => $ratingtxt[$lang], "link" => "rating.html?v=1.5.29"); }
if ($_SESSION['right_customers']) { $mainMenu[] = array("name" => $customerstxt[$lang], "link" => "customers.html?v=1.5.28"); } if ($_SESSION['right_customers']) { $mainMenu[] = array("name" => $customerstxt[$lang], "link" => "customers.html?v=1.5.29"); }
if ($_SESSION['right_pickups']) { $mainMenu[] = array("name" => $pickupstxt[$lang], "link" => "pickups.html?v=1.5.28"); } if ($_SESSION['right_pickups']) { $mainMenu[] = array("name" => $pickupstxt[$lang], "link" => "pickups.html?v=1.5.29"); }
if ($_SESSION['right_dash']) { $mainMenu[] = array("name" => $dashtxt[$lang], "link" => "dash.php?v=1.5.28"); } if ($_SESSION['right_dash']) { $mainMenu[] = array("name" => $dashtxt[$lang], "link" => "dash.php?v=1.5.29"); }
if ($_SESSION['right_manager'] || $_SESSION['is_admin'] || $_SESSION['right_closing']) { $mainMenu[] = array("name" => $admintxt[$lang], "link" => "manager.html?v=1.5.28"); } if ($_SESSION['right_manager'] || $_SESSION['is_admin'] || $_SESSION['right_closing']) { $mainMenu[] = array("name" => $admintxt[$lang], "link" => "manager.html?v=1.5.29"); }
$mainMenu[] = array("name" => $settingtxt[$lang], "link" => "preferences.html?v=1.5.28"); $mainMenu[] = array("name" => $settingtxt[$lang], "link" => "preferences.html?v=1.5.29");
if ($_SESSION['right_timetracking'] || $_SESSION['right_timemanager']) { $mainMenu[] = array("name" => $timetrackingtxt[$lang], "link" => "timetracking.html?v=1.5.28"); } if ($_SESSION['right_timetracking'] || $_SESSION['right_timemanager']) { $mainMenu[] = array("name" => $timetrackingtxt[$lang], "link" => "timetracking.html?v=1.5.29"); }
$mainMenu[] = array("name" => "Hilfe", "link" => "help.php?v=1.5.28"); $mainMenu[] = array("name" => "Hilfe", "link" => "help.php?v=1.5.29");
$mainMenu[] = array("name" => "Feedback", "link" => "feedback.html?v=1.5.28"); $mainMenu[] = array("name" => "Feedback", "link" => "feedback.html?v=1.5.29");
} }
$mainMenu[] = array("name" => $logout[$lang], "link" => "logout.php"); $mainMenu[] = array("name" => $logout[$lang], "link" => "logout.php");
@ -3252,32 +3252,42 @@ class Admin {
$typeIsOnlyConfig = false; $typeIsOnlyConfig = false;
} }
foreach($tablecontent as $row) { $chunkSize = 20;
set_time_limit(60*60); if ($tablename == '%prodimages%') {
$cols = array(); $chunkSize = 1;
$vals = array(); }
$quests = array(); $chunkNo = 0;
foreach ($row as $field) { $indexEnd = MIN(count($tablecontent)-1,$chunkSize);
$fieldname = $field[$fieldKey]; $chunkCount = intdiv(count($tablecontent),$chunkSize) + 1;
$cols[] = $fieldname;
if (in_array($fieldname, $binaryFields) && (!is_null($field[$valueKey])) ) {
$vals[] = base64_decode($field[$valueKey]);
} else {
$vals[] = $field[$valueKey];
}
$quests[] = '?';
}
$colstr = implode(",",$cols);
$queststr = implode(",",$quests);
$sql = "INSERT INTO $tablename ($colstr) VALUES ($queststr)";
$stmt = $pdo->prepare(DbUtils::substTableAlias($sql));
try { if (count($tablecontent)>0) {
$stmt->execute($vals); $colstr = self::createColsForRestoreInsert($tablecontent[0], $fieldKey);
} catch (Exception $e) {
$errorMsg = $e->getMessage(); for ($chunkNo=0;$chunkNo<$chunkCount;$chunkNo++) {
set_time_limit(60*60);
$indexStart = $chunkNo * $chunkSize;
$indexEnd = MIN(count($tablecontent)-1,$indexStart + $chunkSize - 1);
$vals = array();
for($i=$indexStart;$i<=$indexEnd;$i++) {
$row = $tablecontent[$i];
foreach ($row as $field) {
$fieldname = $field[$fieldKey];
if (in_array($fieldname, $binaryFields) && (!is_null($field[$valueKey])) ) {
$vals[] = base64_decode($field[$valueKey]);
} else {
$vals[] = $field[$valueKey];
}
}
}
$numberOfSets = $indexEnd - $indexStart + 1;
$queststr = self::createQuestionMarksForSqlInsert(count($tablecontent[0]), $numberOfSets);
$sql = "INSERT INTO $tablename ($colstr) VALUES $queststr";
$stmt = $pdo->prepare(DbUtils::substTableAlias($sql));
try {
$stmt->execute($vals);
} catch (Exception $e) {
$errorMsg = $e->getMessage();
}
} }
} }
} }
@ -3296,6 +3306,30 @@ class Admin {
$this->completeImportProcess($pdo); $this->completeImportProcess($pdo);
} }
private static function createColsForRestoreInsert($dataEntry,$fieldKey) {
$cols = array();
foreach ($dataEntry as $field) {
$fieldname = $field[$fieldKey];
$cols[] = $fieldname;
}
$colstr = implode(",",$cols);
return $colstr;
}
private static function createQuestionMarksForSqlInsert($numberOfCols,$numberOfSets) {
$entryQuests = array();
for ($set=0;$set<$numberOfSets;$set++) {
$quests = array();
for($col=0;$col<$numberOfCols;$col++) {
$quests[] = '?';
}
$aSet = '(' . implode(',',$quests) . ')';
$entryQuests[] = $aSet;
}
return implode(',',$entryQuests);
}
private function restoreFromZip($pdo,$zipFile) { private function restoreFromZip($pdo,$zipFile) {
$tmpdir = CommonUtils::getConfigValue($pdo, 'tmpdir', ''); $tmpdir = CommonUtils::getConfigValue($pdo, 'tmpdir', '');
if ($tmpdir == '') { if ($tmpdir == '') {
@ -3354,38 +3388,47 @@ class Admin {
$typeIsOnlyConfig = false; $typeIsOnlyConfig = false;
} }
foreach($tablecontent as $row) { $chunkSize = 20;
set_time_limit(60*60); if ($tablename == '%prodimages%') {
$cols = array(); $chunkSize = 1;
$vals = array(); }
$quests = array(); $chunkNo = 0;
foreach ($row as $field) { $indexEnd = MIN(count($tablecontent)-1,$chunkSize);
try { $chunkCount = intdiv(count($tablecontent),$chunkSize) + 1;
$fieldname = $field['f'];
$cols[] = $fieldname; if (count($tablecontent)>0) {
if (in_array($fieldname, $binaryFields) && (!is_null($field['v']))) { $colstr = self::createColsForRestoreInsert($tablecontent[0], 'f');
$vals[] = base64_decode($field['v']); for ($chunkNo=0;$chunkNo<$chunkCount;$chunkNo++) {
} else { set_time_limit(60*60);
$vals[] = $field['v']; $indexStart = $chunkNo * $chunkSize;
} $indexEnd = MIN(count($tablecontent)-1,$indexStart + $chunkSize - 1);
$vals = array();
for($i=$indexStart;$i<=$indexEnd;$i++) {
$row = $tablecontent[$i];
foreach ($row as $field) {
try {
$fieldname = $field['f'];
$quests[] = '?'; if (in_array($fieldname, $binaryFields) && (!is_null($field['v']))) {
} catch (Exception $ex) { $vals[] = base64_decode($field['v']);
} else {
echo $ex->getMessage(); $vals[] = $field['v'];
exit; }
} catch (Exception $ex) {
echo $ex->getMessage();
exit;
}
}
}
$numberOfSets = $indexEnd - $indexStart + 1;
$queststr = self::createQuestionMarksForSqlInsert(count($tablecontent[0]), $numberOfSets);
$sql = "INSERT INTO $tablename ($colstr) VALUES $queststr";
$stmt = $pdo->prepare(DbUtils::substTableAlias($sql));
try {
$stmt->execute($vals);
} catch (Exception $e) {
$errorMsg = $e->getMessage();
} }
}
$colstr = implode(",",$cols);
$queststr = implode(",",$quests);
$sql = "INSERT INTO $tablename ($colstr) VALUES ($queststr)";
$stmt = $pdo->prepare($this->dbutils->resolveTablenamesInSqlString($sql));
try {
$stmt->execute($vals);
} catch (Exception $e) {
$errorMsg = $e->getMessage();
} }
} }
} }

View File

@ -174,6 +174,12 @@ class Bill {
return; return;
} else if ($command == 'cancelBill') { } else if ($command == 'cancelBill') {
$pdo = DbUtils::openDbAndReturnPdoStatic(); $pdo = DbUtils::openDbAndReturnPdoStatic();
$guestAssignedAndPaid = self::isBillAssignedToGuestAndPaid($pdo, $_POST['billid']);
if (!is_null($guestAssignedAndPaid)) {
$msg = "Rechnung ist dem Gast '$guestAssignedAndPaid' zugewiesen und als bezahlt deklariert. Bezahlstatus muss vor einem Bonstorno in der Gastansicht geändert werden.";
echo json_encode(array("status" => "ERROR", "code" => ERROR_BILL_GUEST_ASSIGNED_AND_PAID, "msg" => $msg, "customer" => $guestAssignedAndPaid));
return;
}
$this->cancelBill($pdo,$_POST['billid'],$_POST['stornocode'],$_POST['reason'],true,true,true,$_POST['removeproducts']); $this->cancelBill($pdo,$_POST['billid'],$_POST['stornocode'],$_POST['reason'],true,true,true,$_POST['removeproducts']);
return; return;
} }
@ -1644,4 +1650,17 @@ class Bill {
$objPHPExcel->disconnectWorksheets(); $objPHPExcel->disconnectWorksheets();
unset($objPHPExcel); unset($objPHPExcel);
} }
private static function isBillAssignedToGuestAndPaid($pdo,$billid) {
$sql = "SELECT paymentid,intguestid,IFNULL(intguestpaid,0) as intguestpaid,C.name as customername FROM %bill% B LEFT JOIN %customers% C ON B.intguestid=C.id WHERE B.id=?";
$result = CommonUtils::fetchSqlAll($pdo, $sql, array($billid));
if (count($result) > 0) {
$entry = $result[0];
if ($entry["intguestpaid"] == 1) {
return $entry["customername"];
}
}
return null;
}
} }

View File

@ -205,10 +205,10 @@ if (!$ok) {
return(array("status" => "ERROR", "code" => ERROR_INCONSISTENT_DB, "msg" => ERROR_INCONSISTENT_DB_MSG)); return(array("status" => "ERROR", "code" => ERROR_INCONSISTENT_DB, "msg" => ERROR_INCONSISTENT_DB_MSG));
} }
$sql = "UPDATE %bill% SET closingid='$newClosingId' WHERE closingid is null AND (tableid >= '0' OR status='c') "; $sql = "UPDATE %bill% SET closingid='$newClosingId' WHERE closingid is null AND (tableid >= '0' OR status='c') AND (paymentid <> ?)";
CommonUtils::execSql($pdo, $sql, null); CommonUtils::execSql($pdo, $sql, array(8));
$sql ="SELECT count(id) as billstotake FROM %bill% WHERE closingid=? AND (tableid >= '0' OR status='c')"; $sql = "SELECT count(id) as billstotake FROM %bill% WHERE closingid=? AND (tableid >= '0' OR status='c')";
$stmt = $pdo->prepare($this->dbutils->resolveTablenamesInSqlString($sql)); $stmt = $pdo->prepare($this->dbutils->resolveTablenamesInSqlString($sql));
$stmt->execute(array($newClosingId)); $stmt->execute(array($newClosingId));
$row = $stmt->fetchObject(); $row = $stmt->fetchObject();
@ -282,6 +282,9 @@ CommonUtils::execSql($pdo, "OPTIMIZE TABLE %log%", null);
workreceipts::resetWorkReceiptId($pdo); workreceipts::resetWorkReceiptId($pdo);
$sql = "UPDATE %customerlog% SET clsid=? WHERE clsid is null";
CommonUtils::execSql($pdo, $sql, array($newClosingId));
// commit must before email, because there direct access to db happens // commit must before email, because there direct access to db happens
$pdo->commit(); $pdo->commit();
@ -462,11 +465,7 @@ $this->retrieveClosingFromDb($pdo,$closingid, true, false);
private function exportGuestCsv($closingid) { private function exportGuestCsv($closingid) {
$pdo = DbUtils::openDbAndReturnPdoStatic(); $pdo = DbUtils::openDbAndReturnPdoStatic();
$prevClosingDate = self::getDateOfPreviousClosing($pdo,$closingid); Customers::exportLogOfOneClosing($pdo, $closingid);
$sql = "SELECT closingdate FROM %closing% WHERE id=?";
$curClosingDateRow = CommonUtils::getRowSqlObject($pdo, $sql, array($closingid));
$curClosingDate = $curClosingDateRow->closingdate;
Customers::exportLog($pdo, $prevClosingDate, $curClosingDate);
} }
private function emailCsvCore($pdo,$closingid,$toEmail,$topic,$startdate,$enddate,$billsum,$billcount) { private function emailCsvCore($pdo,$closingid,$toEmail,$topic,$startdate,$enddate,$billsum,$billcount) {

View File

@ -98,11 +98,12 @@ class Customers {
} }
function handleCommand($command) { function handleCommand($command) {
if(session_id() == '') {
session_start();
}
if (($command == "reportbills") || ($command == "reportcustomerbills")) { if (($command == "reportbills") || ($command == "reportcustomerbills")) {
if(session_id() == '') {
session_start();
}
if (!isset($_SESSION['right_customers'])) { if (!isset($_SESSION['right_customers'])) {
echo "ERROR: no sufficient rights"; echo "ERROR: no sufficient rights";
return; return;
@ -116,6 +117,7 @@ class Customers {
self::$command($pdo); self::$command($pdo);
return; return;
} }
if (!self::checkRights($command)) { if (!self::checkRights($command)) {
return false; return false;
} }
@ -148,13 +150,13 @@ class Customers {
} else if ($command == 'getBills') { } else if ($command == 'getBills') {
echo json_encode(self::getAllBills($pdo,$_GET['cusid'])); echo json_encode(self::getAllBills($pdo,$_GET['cusid']));
} else if ($command == 'pay') { } else if ($command == 'pay') {
echo json_encode($this->pay($pdo,$_POST['id'],$_POST['paymentid'])); echo json_encode($this->pay($pdo,$_POST['id'],$_SESSION['userid'],$_POST['paymentid']));
} else if ($command == 'unpay') { } else if ($command == 'unpay') {
echo json_encode($this->unpay($pdo,$_POST['id'],$_POST["code"],$_POST["remark"])); echo json_encode($this->unpay($pdo,$_POST['id'],$_SESSION['userid'],$_POST["code"],$_POST["remark"]));
} else if ($command == 'printbill') { } else if ($command == 'printbill') {
echo json_encode($this->printBill($pdo,$_POST['id'])); echo json_encode($this->printBill($pdo,$_POST['id']));
} else if ($command == 'payallbills') { } else if ($command == 'payallbills') {
echo json_encode($this->payallbills($pdo,$_POST['id'],$_POST['paymentid'])); echo json_encode($this->payallbills($pdo,$_POST['id'],$_SESSION['userid'],$_POST['paymentid']));
} else if ($command == 'printallbills') { } else if ($command == 'printallbills') {
echo json_encode($this->printallbills($pdo,$_POST['id'])); echo json_encode($this->printallbills($pdo,$_POST['id']));
} else if ($command == 'emailGroup') { } else if ($command == 'emailGroup') {
@ -164,7 +166,7 @@ class Customers {
} else if ($command == 'exportLog') { } else if ($command == 'exportLog') {
self::exportLog($pdo); self::exportLog($pdo);
} else if ($command == 'payallguests') { } else if ($command == 'payallguests') {
echo json_encode(self::payallguests($pdo,$_POST['paymentid'])); echo json_encode(self::payallguests($pdo,$_POST['paymentid'],$_SESSION['userid']));
} else { } else {
echo "Command not supported."; echo "Command not supported.";
} }
@ -313,7 +315,10 @@ class Customers {
} }
} }
private static function payOrUnpay($pdo,$id,$value,$doTransaction,$remark=null) { public static function payOrUnpay($pdo,$id,$userid,$paymentid, $value,$doTransaction,$remark=null) {
if (is_null($paymentid)) {
$paymentid = 8;
}
try { try {
if ($doTransaction) { if ($doTransaction) {
$pdo->beginTransaction(); $pdo->beginTransaction();
@ -326,21 +331,23 @@ class Customers {
} }
return array("status" => "ERROR","msg" => "Bill with id=$id not found"); return array("status" => "ERROR","msg" => "Bill with id=$id not found");
} else { } else {
$sql = "SELECT intguestid FROM %bill% WHERE id=?"; $sql = "SELECT intguestid FROM %bill% WHERE id=? AND closingid is null";
$row = CommonUtils::getRowSqlObject($pdo, $sql, array($id)); $result = CommonUtils::fetchSqlAll($pdo, $sql, array($id));
$cusid = $row->intguestid; if (count($result) == 0) {
if ($doTransaction) {
$sql = "UPDATE %bill% SET intguestpaid=? WHERE id=?"; $pdo->rollBack();
CommonUtils::execSql($pdo, $sql, array($value,$id)); }
return array("status" => "ERROR","msg" => "Unclosed ill with id=$id not found");
}
$cusid = $result[0]["intguestid"];
$sql = "UPDATE %bill% SET intguestpaid=?,paymentid=? WHERE id=?";
CommonUtils::execSql($pdo, $sql, array($value,$paymentid,$id));
QueueContent::sendBillToQRK($pdo, $value, $id); QueueContent::sendBillToQRK($pdo, $value, $id);
date_default_timezone_set(DbUtils::getTimeZone()); date_default_timezone_set(DbUtils::getTimeZone());
$currentTime = date('Y-m-d H:i:s'); $currentTime = date('Y-m-d H:i:s');
if(session_id() == '') {
session_start();
}
$userid = $_SESSION['userid'];
$sql = "INSERT INTO %customerlog% (date,action,customerid,userid,billid,remark) VALUES(?,?,?,?,?,?)"; $sql = "INSERT INTO %customerlog% (date,action,customerid,userid,billid,remark) VALUES(?,?,?,?,?,?)";
$action = (is_null($value) ? self::$CANCEL : self::$PAY); $action = (is_null($value) ? self::$CANCEL : self::$PAY);
CommonUtils::execSql($pdo, $sql, array($currentTime,$action,$cusid,$userid,$id,$remark)); CommonUtils::execSql($pdo, $sql, array($currentTime,$action,$cusid,$userid,$id,$remark));
@ -358,7 +365,7 @@ class Customers {
} }
} }
private static function payallguests($pdo,$paymentid) { private static function payallguests($pdo,$userid,$paymentid) {
$paymentname = self::getPaymentName($pdo,$paymentid); $paymentname = self::getPaymentName($pdo,$paymentid);
$pdo->beginTransaction(); $pdo->beginTransaction();
@ -369,7 +376,7 @@ class Customers {
$billsOfGuest = self::getUnpaidBills($pdo, $customerid)["msg"]["bills"]; $billsOfGuest = self::getUnpaidBills($pdo, $customerid)["msg"]["bills"];
foreach ($billsOfGuest as $b) { foreach ($billsOfGuest as $b) {
$billid = $b["id"]; $billid = $b["id"];
$ret = self::payOrUnpay($pdo, $billid, 1, false,$paymentname); $ret = self::payOrUnpay($pdo, $billid, $userid, $paymentid, $paymentid, 1, false,$paymentname);
if ($ret["status"] != "OK") { if ($ret["status"] != "OK") {
$pdo->rollBack(); $pdo->rollBack();
return $ret; return $ret;
@ -380,11 +387,11 @@ class Customers {
return array("status" => "OK"); return array("status" => "OK");
} }
private function pay($pdo,$id,$paymentid) { private function pay($pdo,$id,$userid,$paymentid) {
$paymentname = self::getPaymentName($pdo,$paymentid); $paymentname = self::getPaymentName($pdo,$paymentid);
return (self::payOrUnpay($pdo, $id, 1,true,$paymentname)); return (self::payOrUnpay($pdo, $id, $userid, $paymentid, 1,true,$paymentname));
} }
private function unpay($pdo,$id,$code,$remark) { private function unpay($pdo,$id,$userid,$code,$remark) {
$stornocode = CommonUtils::getConfigValue($pdo, 'cancelguestcode', null); $stornocode = CommonUtils::getConfigValue($pdo, 'cancelguestcode', null);
if (is_null($stornocode)) { if (is_null($stornocode)) {
return array("status" => "ERROR","msg" => "Es wurde noch kein Stornocode in der Verwaltung festgelegt"); return array("status" => "ERROR","msg" => "Es wurde noch kein Stornocode in der Verwaltung festgelegt");
@ -392,7 +399,7 @@ class Customers {
if ($stornocode != $code) { if ($stornocode != $code) {
return array("status" => "ERROR","msg" => "Falscher Stornocode"); return array("status" => "ERROR","msg" => "Falscher Stornocode");
} }
return (self::payOrUnpay($pdo, $id, null,true,$remark)); return (self::payOrUnpay($pdo, $id, $userid, null, null,true,$remark));
} }
private function printBill($pdo,$billid) { private function printBill($pdo,$billid) {
@ -418,14 +425,14 @@ class Customers {
return array("status" => "OK"); return array("status" => "OK");
} }
private function payallbills($pdo,$cusid,$paymentid) { private function payallbills($pdo,$cusid,$userid,$paymentid) {
try { try {
$pdo->beginTransaction(); $pdo->beginTransaction();
$paymentname = self::getPaymentName($pdo,$paymentid); $paymentname = self::getPaymentName($pdo,$paymentid);
$sql = "SELECT id FROM %bill% WHERE intguestpaid is null AND intguestid=?"; $sql = "SELECT id FROM %bill% WHERE intguestpaid is null AND intguestid=?";
$result = CommonUtils::fetchSqlAll($pdo, $sql, array($cusid)); $result = CommonUtils::fetchSqlAll($pdo, $sql, array($cusid));
foreach($result as $aBill) { foreach($result as $aBill) {
$ok = self::payOrUnpay($pdo, $aBill["id"], 1,false,$paymentname); $ok = self::payOrUnpay($pdo, $aBill["id"], $userid, $paymentid, 1,false,$paymentname);
if ($ok["status"] != "OK") { if ($ok["status"] != "OK") {
$pdo->rollBack(); $pdo->rollBack();
return $ok; return $ok;
@ -589,7 +596,7 @@ class Customers {
if (!$includePaidBills) { if (!$includePaidBills) {
$where = " AND (intguestpaid IS NULL OR intguestpaid='0') "; $where = " AND (intguestpaid IS NULL OR intguestpaid='0') ";
} }
$sql = "SELECT id,billdate,brutto,IFNULL(guestinfo,'') as guestinfo,IFNULL(intguestpaid,'0') as paid FROM %bill% WHERE intguestid=? $where"; $sql = "SELECT id,billdate,brutto,IFNULL(guestinfo,'') as guestinfo,IFNULL(intguestpaid,'0') as paid,IFNULL(closingid,0) as closed FROM %bill% WHERE intguestid=? $where";
$result = CommonUtils::fetchSqlAll($pdo, $sql, array($cusid)); $result = CommonUtils::fetchSqlAll($pdo, $sql, array($cusid));
return array("status" => "OK","msg" => array("bills" => $result,"cusid" => $cusid)); return array("status" => "OK","msg" => array("bills" => $result,"cusid" => $cusid));
} }
@ -683,33 +690,48 @@ class Customers {
} }
} }
public static function exportLog($pdo,$startDate = null, $endDate = null) { public static function exportLogOfOneClosing($pdo,$closingid) {
self::exportLog($pdo,null,null,$closingid);
}
public static function exportLog($pdo,$startDate = null, $endDate = null,$closingid=null) {
header("Content-type: text/x-csv"); header("Content-type: text/x-csv");
header("Content-Disposition: attachment; filename=Gastbezahlungen.csv"); header("Content-Disposition: attachment; filename=Gastbezahlungen.csv");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Pragma: no-cache"); header("Pragma: no-cache");
header("Expires: 0"); header("Expires: 0");
echo("Datum; Gast-ID; Gastname; Bon-ID; Aktion; Benutzer-ID; Benutzername; Stornobemerkung oder Zahlungsweg\n"); echo("Datum; Gast-ID; Gastname; Bon-ID; Aktion; Benutzer-ID; Benutzername; Stornobemerkung oder Zahlungsweg; Tageserfassung-ID\n");
$sql = "SELECT %customerlog%.date as date,CASE WHEN action=0 THEN 'Bezahlung storniert' WHEN action=1 THEN 'bezahlt' ELSE 'undefiniert' END as action,"; $sql = "SELECT %customerlog%.date as date,CASE WHEN action=0 THEN 'Bezahlung storniert' WHEN action=1 THEN 'bezahlt' ELSE 'undefiniert' END as action,%customerlog%.clsid as clsid, ";
$sql .= " %customerlog%.billid as billid,%customerlog%.remark as remark, userid, username, customerid, %user%.username as username, %customers%.name as customername "; $sql .= " %customerlog%.billid as billid,%customerlog%.remark as remark, userid, username, customerid, %user%.username as username, %customers%.name as customername ";
$sql .= " FROM %customerlog%,%user%,%customers% "; $sql .= " FROM %customerlog%,%user%,%customers% ";
$sql .= " WHERE (userid=%user%.id AND customerid=%customers%.id) "; $sql .= " WHERE (userid=%user%.id AND customerid=%customers%.id) ";
$sql .= " ORDER BY %customerlog%.date";
$where = ''; $where = '';
if (is_null($startDate) && (!is_null($endDate))) { if (is_null($closingid)) {
$where = " AND (date <= '$endDate') "; if (is_null($startDate) && (!is_null($endDate))) {
} else if (!is_null($startDate) && (!is_null($endDate))) { $where = " AND (date <= '$endDate') ";
$where = " AND (date <= '$endDate') AND (date >= '$startDate') "; } else if (!is_null($startDate) && (!is_null($endDate))) {
$where = " AND (date <= '$endDate') AND (date >= '$startDate') ";
}
} else {
$where = " AND clsid=?";
} }
$sql .= $where; $sql .= $where;
$sql .= " ORDER BY %customerlog%.date";
$result = CommonUtils::fetchSqlAll($pdo, $sql, null); if (is_null($closingid)) {
$result = CommonUtils::fetchSqlAll($pdo, $sql, null);
} else {
$result = CommonUtils::fetchSqlAll($pdo, $sql, array($closingid));
}
foreach($result as $aLog) { foreach($result as $aLog) {
$clsidTxt = "";
if (intval($aLog["clsid"]) != 0) {
$clsidTxt = $aLog["clsid"];
}
echo $aLog["date"] . ";"; echo $aLog["date"] . ";";
echo $aLog["customerid"] . ";"; echo $aLog["customerid"] . ";";
echo self::quoteForCsv($aLog["customername"]) . ";"; echo self::quoteForCsv($aLog["customername"]) . ";";
@ -718,6 +740,7 @@ class Customers {
echo $aLog["userid"] . ";"; echo $aLog["userid"] . ";";
echo self::quoteForCsv($aLog["username"]) . ";"; echo self::quoteForCsv($aLog["username"]) . ";";
echo self::quoteForCsv($aLog["remark"]) . ";"; echo self::quoteForCsv($aLog["remark"]) . ";";
echo $clsidTxt . ";";
echo "\r\n"; echo "\r\n";
} }
} }
@ -855,7 +878,7 @@ class Customers {
$txt = "<head>"; $txt = "<head>";
$txt .= "<title>" . self::$CUS_OVERVIEW[$lang] . "</title>"; $txt .= "<title>" . self::$CUS_OVERVIEW[$lang] . "</title>";
$txt .= '<meta http-equiv="content-type" content="text/html; charset=utf-8">'; $txt .= '<meta http-equiv="content-type" content="text/html; charset=utf-8">';
$txt .= '<link rel="stylesheet" type="text/css" href="../css/guestreport.css?v=1.5.28">'; $txt .= '<link rel="stylesheet" type="text/css" href="../css/guestreport.css?v=1.5.29">';
$txt .= "</head>"; $txt .= "</head>";
return $txt; return $txt;
} }

View File

@ -27,7 +27,7 @@ if (isset($_POST["cmd"])) {
if (strlen($status) > 150) { if (strlen($status) > 150) {
$status = substr($status, 0,149); $status = substr($status, 0,149);
} }
$version = "1.5.28"; $version = "1.5.29";
$arr = array("cmd" => $cmd,"fct" => $fct, "xhr" => $xhr,"errormsg" => $errormsg,"status" => $status,"version" => $version,"phpversion" => $phpversion); $arr = array("cmd" => $cmd,"fct" => $fct, "xhr" => $xhr,"errormsg" => $errormsg,"status" => $status,"version" => $version,"phpversion" => $phpversion);
} else { } else {

View File

@ -101,4 +101,7 @@ define ( 'ERROR_COMMAND_ERROR_MSG', 'Kommando konnte nicht korrekt ausgeführt w
define ( 'ERROR_BILL_CUSTOMER_PAID', '32'); define ( 'ERROR_BILL_CUSTOMER_PAID', '32');
define ( 'ERROR_BILL_CUSTOMER_PAID_MSG', 'Bon wurde schon von einem Gast bezahlt - siehe Gästeansicht'); define ( 'ERROR_BILL_CUSTOMER_PAID_MSG', 'Bon wurde schon von einem Gast bezahlt - siehe Gästeansicht');
define ( 'ERROR_CLOSING_TIME_LIMIT', 33); define ( 'ERROR_CLOSING_TIME_LIMIT', 33);
define ( 'ERROR_BILL_GUEST_ASSIGNED_AND_PAID', '34');
define ( 'ERROR_BILL_GUEST_ASSIGNED_AND_PAID_MSG', 'Rechnung ist als bezahlt deklariert und einem Gast zugewiesen. Bezahlstatus muss in der Gastansicht geändert werden. Gast: ');

View File

@ -388,6 +388,7 @@ class QueueContent {
$extras = $stmt->fetchAll(); $extras = $stmt->fetchAll();
$extrasnames = array(); $extrasnames = array();
$extrasids = array(); $extrasids = array();
$extrasamounts = array();
foreach($extras as $anExtra) { foreach($extras as $anExtra) {
$extrasnames[] = $anExtra["name"]; $extrasnames[] = $anExtra["name"];
$extrasids[] = $anExtra["extraid"]; $extrasids[] = $anExtra["extraid"];
@ -894,14 +895,15 @@ class QueueContent {
} }
} }
function getAllOrders() { private function getAllOrders() {
if (!($this->userrights->hasCurrentUserRight('right_statistics')) ) { if (!($this->userrights->hasCurrentUserRight('right_statistics')) ) {
echo json_encode(array("status" => "ERROR","msg" => "Benutzerrechte nicht ausreichend")); echo json_encode(array("status" => "ERROR","msg" => "Benutzerrechte nicht ausreichend"));
return false; return false;
} }
$pdo = DbUtils::openDbAndReturnPdoStatic(); $pdo = DbUtils::openDbAndReturnPdoStatic();
$sql = "SELECT count(Q.id) as countid,productid,price,productname,ordertime,username,IFNULL(toremove,0) as toremove,IF(billid is null,0,1) as ispaid,IFNULL(tableno,'To-Go') as tablename "; $sql = "SELECT count(Q.id) as countid,productid,price,productname,ordertime,username,IFNULL(toremove,0) as toremove,IF(billid is null,0,1) as ispaid,IFNULL(tableno,'To-Go') as tablename ";
$sql .= " FROM %queue% Q LEFT JOIN %resttables% R ON Q.tablenr=R.id LEFT JOIN %user% U ON Q.orderuser=U.id WHERE isclosed is null "; $sql .= " FROM %queue% Q LEFT JOIN %resttables% R ON Q.tablenr=R.id LEFT JOIN %user% U ON Q.orderuser=U.id ";
$sql .= " WHERE isclosed is null ";
$sql .= " group by ordertime,productname,productid,price,toremove,ispaid,tablename,username ORDER BY ordertime,tablename,ispaid"; $sql .= " group by ordertime,productname,productid,price,toremove,ispaid,tablename,username ORDER BY ordertime,tablename,ispaid";
$allorders = CommonUtils::fetchSqlAll($pdo, $sql); $allorders = CommonUtils::fetchSqlAll($pdo, $sql);
@ -1107,7 +1109,7 @@ class QueueContent {
session_start(); session_start();
} }
$pdo = DbUtils::openDbAndReturnPdoStatic(); $pdo = DbUtils::openDbAndReturnPdoStatic();
$ret = self::addProductListToQueueCore($pdo, $ordertime, $theTableid, $prods, $doPrint, $payprinttype,$_SESSION['userid']); $ret = $this->addProductListToQueueCore($pdo, $ordertime, $theTableid, $prods, $doPrint, $payprinttype,$_SESSION['userid']);
echo json_encode($ret); echo json_encode($ret);
} }
/* /*
@ -1117,7 +1119,7 @@ class QueueContent {
* If product shall not be run over kitchen or supplydesk this is * If product shall not be run over kitchen or supplydesk this is
* managed here as well * managed here as well
*/ */
public static function addProductListToQueueCore($pdo,$ordertime,$theTableid,$prods,$doPrint,$payprinttype,$userid) { public function addProductListToQueueCore($pdo,$ordertime,$theTableid,$prods,$doPrint,$payprinttype,$userid) {
if (intval($theTableid) == 0) { if (intval($theTableid) == 0) {
$theTableid = null; // togo room $theTableid = null; // togo room
@ -1318,9 +1320,11 @@ class QueueContent {
if ($doPrint == 1) { if ($doPrint == 1) {
if ($payprinttype == "s") { if ($payprinttype == "s") {
$this->doWorkPrint($pdo,$theTableid,$insertedQueueIds,$_SESSION['currentuser'],$payprinttype, $_SESSION['language']); $this->doWorkPrint($pdo,$theTableid,$insertedQueueIds,$_SESSION['currentuser'],$payprinttype, $_SESSION['language']);
$pdo->commit();
return(array("status" => "OK")); return(array("status" => "OK"));
} else { } else {
$result = $this->doWorkPrint($pdo,$theTableid,$insertedQueueIds,$_SESSION['currentuser'],$payprinttype, $_SESSION['language']); $result = $this->doWorkPrint($pdo,$theTableid,$insertedQueueIds,$_SESSION['currentuser'],$payprinttype, $_SESSION['language']);
$pdo->commit();
return(array("status" => "OK", "msg" => $result)); return(array("status" => "OK", "msg" => $result));
} }
} }

View File

@ -278,6 +278,7 @@ class Reports {
$sql = "SELECT sum(brutto) as sumtotal FROM %bill% "; $sql = "SELECT sum(brutto) as sumtotal FROM %bill% ";
$sql .= "WHERE status is null "; // no cash insert or take off, no stornos $sql .= "WHERE status is null "; // no cash insert or take off, no stornos
$sql .= "AND billdate between ? AND ? "; $sql .= "AND billdate between ? AND ? ";
$sql .= "AND paymentid <> '8' ";
if ($mustBeClosed) { if ($mustBeClosed) {
$sql .= "AND closingid is not null"; // and must be in a closing $sql .= "AND closingid is not null"; // and must be in a closing
} }
@ -320,7 +321,8 @@ class Reports {
$sql .= "AND billid is not null AND %queue%.billid=%bill%.id "; $sql .= "AND billid is not null AND %queue%.billid=%bill%.id ";
$sql .= "AND billdate between ? AND ? "; $sql .= "AND billdate between ? AND ? ";
$sql .= "AND %bill%.closingid is not null "; $sql .= "AND %bill%.closingid is not null ";
$sql .= "AND %bill%.status is null"; $sql .= "AND %bill%.status is null ";
$sql .= "AND %bill%.paymentid <> '8' ";
$result = CommonUtils::fetchSqlAll($pdo, $sql, array($startDateTime,$endDateTime)); $result = CommonUtils::fetchSqlAll($pdo, $sql, array($startDateTime,$endDateTime));
} else { } else {
@ -329,7 +331,8 @@ class Reports {
$sql .= "AND billid is not null AND Q.billid=B.id "; $sql .= "AND billid is not null AND Q.billid=B.id ";
$sql .= "AND B.closingid is not null "; $sql .= "AND B.closingid is not null ";
$sql .= "AND B.closingid between ? AND ? "; $sql .= "AND B.closingid between ? AND ? ";
$sql .= "AND B.status is null"; $sql .= "AND B.status is null ";
$sql .= "AND B.paymentid <> '8' ";
$result = CommonUtils::fetchSqlAll($pdo, $sql, array($closidstart,$closidend)); $result = CommonUtils::fetchSqlAll($pdo, $sql, array($closidstart,$closidend));
} }
@ -518,6 +521,7 @@ class Reports {
$sql .= "AND billid is not null AND %queue%.billid=%bill%.id "; $sql .= "AND billid is not null AND %queue%.billid=%bill%.id ";
$sql .= "AND DATE(billdate) = CURDATE() "; $sql .= "AND DATE(billdate) = CURDATE() ";
$sql .= "AND %bill%.status is null "; $sql .= "AND %bill%.status is null ";
$sql .= "AND %bill%.paymentid <> '8' ";
$sql .= "GROUP BY longname,productid "; $sql .= "GROUP BY longname,productid ";
$sql .= "ORDER BY value DESC "; $sql .= "ORDER BY value DESC ";
$sql .= "LIMIT 10"; $sql .= "LIMIT 10";
@ -535,6 +539,7 @@ class Reports {
$sql .= "AND billid is not null AND %queue%.billid=%bill%.id "; $sql .= "AND billid is not null AND %queue%.billid=%bill%.id ";
$sql .= "AND DATE(billdate) = CURDATE() "; $sql .= "AND DATE(billdate) = CURDATE() ";
$sql .= "AND %bill%.status is null "; $sql .= "AND %bill%.status is null ";
$sql .= "AND %bill%.paymentid <> '8' ";
$sql .= "GROUP BY longname,productid "; $sql .= "GROUP BY longname,productid ";
$sql .= "ORDER BY value DESC "; $sql .= "ORDER BY value DESC ";
$sql .= "LIMIT 10"; $sql .= "LIMIT 10";

View File

@ -57,6 +57,9 @@ class Tasks {
} }
public static function areThereTasksForMe($pdo) { public static function areThereTasksForMe($pdo) {
if (is_null($pdo)) {
return 0;
}
if (session_id() == '') { if (session_id() == '') {
session_start(); session_start();
} }

View File

@ -5,6 +5,7 @@ class Demodata {
try { try {
$pdo = DbUtils::openDbAndReturnPdoStatic(); $pdo = DbUtils::openDbAndReturnPdoStatic();
date_default_timezone_set(DbUtils::getTimeZone()); date_default_timezone_set(DbUtils::getTimeZone());
$queue = new QueueContent();
$today = date('Y-m-d'); $today = date('Y-m-d');
$yesterdayDT = new DateTime('yesterday'); $yesterdayDT = new DateTime('yesterday');
$yesterday = $yesterdayDT->format('Y-m-d'); $yesterday = $yesterdayDT->format('Y-m-d');
@ -12,6 +13,14 @@ class Demodata {
$secondDayOfPreviosMonth = date("Y-m", strtotime("first day of previous month")) . "-02"; $secondDayOfPreviosMonth = date("Y-m", strtotime("first day of previous month")) . "-02";
$thirdDayOfPreviosMonth = date("Y-m", strtotime("first day of previous month")) . "-03"; $thirdDayOfPreviosMonth = date("Y-m", strtotime("first day of previous month")) . "-03";
// reateNewCustomer($pdo,$name,$email,$addr,$remark,$phone,$mobil,$www,$hello,$regards,$checkin,$checkout,$room)
$customersModule = new Customers();
$customersModule->createNewCustomer($pdo, "Max Mustermann", "max@nospam.de", '', '', '', '', '', 'Herr', '', $previousmonth, null, "1");
$customersModule->createNewCustomer($pdo, "Silke Musterfrau", "silke@nospam.de", '', '', '', '', '', 'Frau', '', $previousmonth, null, "2");
$customersModule->createNewCustomer($pdo, "Donald Duck", "donald@nospam.de", '', '', '', '', '', 'Herr', '', $yesterday, null, "3");
$customersModule->createNewCustomer($pdo, "Harry Potter", "harry@nospam.de", '', '', '', '', '', 'Herr', '', $yesterday, null, "4");
$customersModule->createNewCustomer($pdo, "Jack Smith", "jack@nospam.de", '', '', '', '', '', 'Mr', '', $previousmonth, $yesterday, "5");
$sql = "SELECT id,priceA as price FROM %products% WHERE available='1' AND unit is NULL AND removed is null ORDER BY id LIMIT 40"; $sql = "SELECT id,priceA as price FROM %products% WHERE available='1' AND unit is NULL AND removed is null ORDER BY id LIMIT 40";
$prods = CommonUtils::fetchSqlAll($pdo, $sql); $prods = CommonUtils::fetchSqlAll($pdo, $sql);
if (count($prods) == 0) { if (count($prods) == 0) {
@ -33,7 +42,7 @@ class Demodata {
return; return;
} }
$tables = self::createDemoForADate($pdo, $previousmonth, $users, $prods, $tablesCore); $tables = self::createDemoForADate($pdo, $previousmonth, $users, $prods, $tablesCore,$queue);
$tables = self::createSomeBills($pdo, $tables, $users, $secondDayOfPreviosMonth); $tables = self::createSomeBills($pdo, $tables, $users, $secondDayOfPreviosMonth);
@ -45,10 +54,34 @@ class Demodata {
$billModule = new Bill(); $billModule = new Bill();
$ok = $billModule->cancelBill($pdo, $tables[0]["billid"], "", "Demo-Storno", false, false, false, 0, $thirdDayOfPreviosMonth . " 22:10:00"); $ok = $billModule->cancelBill($pdo, $tables[0]["billid"], "", "Demo-Storno", false, false, false, 0, $thirdDayOfPreviosMonth . " 22:10:00");
if (count($tables) > 1) {
$queueids = $tables[0]["queueids"];
if (count($queueids) > 4) {
$queueidsToBill = array($tables[0]["queueids"][0],$tables[0]["queueids"][1],$tables[0]["queueids"][2]);
self::createBillOfTable($pdo, $queue, implode(',', $queueidsToBill), $tables[0]["id"], 1, $users[0]["id"], $secondDayOfPreviosMonth . " 22:10:00");
}
if (count($tables) > 2) {
$ok = $billModule->cancelBill($pdo, $tables[2]["billid"], "", "Demo-Storno", false, false, false, 1, $thirdDayOfPreviosMonth . " 22:12:20"); $ok = $billModule->cancelBill($pdo, $tables[2]["billid"], "", "Demo-Storno", false, false, false, 1, $thirdDayOfPreviosMonth . " 22:12:20");
} }
$queueidsOfTogo = self::createDemoForADateAndTogo($pdo,$secondDayOfPreviosMonth . " 22:10:00",$users,$prods,$queue);
$guestbillid = self::createBillOfTable($pdo, new QueueContent(), implode(',', $queueidsOfTogo), 0, 1, $users[0]["id"], $secondDayOfPreviosMonth . " 22:10:05");
$customers = new Customers();
$sql = "SELECT id,name FROM %customers% ORDER BY id LIMIT 4";
$cusres = CommonUtils::fetchSqlAll($pdo, $sql);
$cust = $cusres[0];
$cust2 = $cusres[1];
$queueidsOfGuest = implode(',',self::createDemoForGuest($pdo, $secondDayOfPreviosMonth . " 22:13:00",$users,$prods,1,$queue));
if (!is_null($queueidsOfGuest)) {
$billToIgnore = $queue->declarePaidCreateBillReturnBillId($pdo,$queueidsOfGuest,$tables[0]["id"],8,1,0,true,'',$cust["name"],$cust["id"],$users[0]["id"],$secondDayOfPreviosMonth . " 22:14:00");
}
$queueidsOfGuest = implode(',',self::createDemoForGuest($pdo, $secondDayOfPreviosMonth . " 22:14:00",$users,$prods,2,$queue));
if (!is_null($queueidsOfGuest)) {
$billid = $queue->declarePaidCreateBillReturnBillId($pdo,$queueidsOfGuest,$tables[0]["id"],8,1,0,true,'',$cust2["name"],$cust2["id"],$users[0]["id"],$secondDayOfPreviosMonth . " 22:15:00");
$customers->payOrUnpay($pdo, $billid, $users[0]["id"], 1, 1, false, "Demo Gast-Bezahlung");
}
$dateOfClosing = $thirdDayOfPreviosMonth . " 23:55:00"; $dateOfClosing = $thirdDayOfPreviosMonth . " 23:55:00";
$sql = "SELECT closingdate FROM %closing% ORDER BY closingdate DESC LIMIT 1"; $sql = "SELECT closingdate FROM %closing% ORDER BY closingdate DESC LIMIT 1";
$result = CommonUtils::fetchSqlAll($pdo, $sql); $result = CommonUtils::fetchSqlAll($pdo, $sql);
@ -63,7 +96,7 @@ class Demodata {
$result = CommonUtils::fetchSqlAll($pdo, $sql); $result = CommonUtils::fetchSqlAll($pdo, $sql);
if (count($result) == 0) { if (count($result) == 0) {
$tables = self::createDemoForADate($pdo, $yesterday, $users, $prods, $tablesCore); $tables = self::createDemoForADate($pdo, $yesterday, $users, $prods, $tablesCore,$queue);
$tables = self::createSomeBills($pdo, $tables, $users, $yesterday); $tables = self::createSomeBills($pdo, $tables, $users, $yesterday);
// TODO: cash insert! // TODO: cash insert!
@ -73,17 +106,13 @@ class Demodata {
} }
$result = $closing->createClosingCore($pdo, "Tageserfassung diesen Monat", 0, $yesterday . " 22:00:00", false); $result = $closing->createClosingCore($pdo, "Tageserfassung diesen Monat", 0, $yesterday . " 22:00:00", false);
$tables = self::createDemoForADate($pdo, $today, $users, $prods, $tablesCore); $tables = self::createDemoForADate($pdo, $today, $users, $prods, $tablesCore,$queue);
$tables = self::createSomeBills($pdo, $tables, $users, $today); $tables = self::createSomeBills($pdo, $tables, $users, $today);
} }
$queueidsOfGuest = implode(',',self::createDemoForGuest($pdo, $today . " 22:13:00",$users,$prods,2,$queue));
// reateNewCustomer($pdo,$name,$email,$addr,$remark,$phone,$mobil,$www,$hello,$regards,$checkin,$checkout,$room) if (!is_null($queueidsOfGuest)) {
$customersModule = new Customers(); $queue->declarePaidCreateBillReturnBillId($pdo,$queueidsOfGuest,$tables[0]["id"],8,1,0,true,'',$cust["name"],$cust["id"],$users[0]["id"],$today . " 22:14:00");
$customersModule->createNewCustomer($pdo, "Max Mustermann", "max@nospam.de", '', '', '', '', '', 'Herr', '', $previousmonth, null, "1"); }
$customersModule->createNewCustomer($pdo, "Silke Musterfrau", "silke@nospam.de", '', '', '', '', '', 'Frau', '', $previousmonth, null, "2");
$customersModule->createNewCustomer($pdo, "Donald Duck", "donald@nospam.de", '', '', '', '', '', 'Herr', '', $yesterday, null, "3");
$customersModule->createNewCustomer($pdo, "Harry Potter", "harry@nospam.de", '', '', '', '', '', 'Herr', '', $yesterday, null, "4");
$customersModule->createNewCustomer($pdo, "Jack Smith", "jack@nospam.de", '', '', '', '', '', 'Mr', '', $previousmonth, $yesterday, "5");
echo json_encode(array("status" => "OK")); echo json_encode(array("status" => "OK"));
} catch (Exception $ex) { } catch (Exception $ex) {
@ -91,7 +120,61 @@ class Demodata {
} }
} }
private static function createDemoForADate($pdo,$dateStr,$users,$prods,$tables) { private static function createDemoForGuest($pdo,$dateTime,$users,$prods,$prodStartIndex,$queue) {
if (count($prods) > (intval($prodStartIndex) + 4)) {
$prodArr = array(array(
"changedPrice" => "NO",
"extras" => "",
"option" => "",
"price" => $prods[$prodStartIndex]["price"],
"prodid" => $prods[$prodStartIndex]["id"],
"togo" => 0,
"unit" => 0,
"unitamount" => 1));
$prodArr[] = array(
"changedPrice" => "NO",
"extras" => "",
"option" => "",
"price" => $prods[$prodStartIndex + 3]["price"],
"prodid" => $prods[$prodStartIndex + 3]["id"],
"togo" => 0,
"unit" => 0,
"unitamount" => 1);
$userid = $users[0]["id"];
$ret = $queue->addProductListToQueueCore($pdo, $dateTime, null, $prodArr, 0, 's', $userid);
return $ret['queueids'];
} else {
$ret = null;
}
}
private static function createDemoForADateAndTogo($pdo,$dateTime,$users,$prods,$queue) {
$prodArr = array(array(
"changedPrice" => "NO",
"extras" => "",
"option" => "",
"price" => $prods[0]["price"],
"prodid" => $prods[0]["id"],
"togo" => 0,
"unit" => 0,
"unitamount" => 1));
if (count($prods) > 1) {
$prodArr[] = array(
"changedPrice" => "NO",
"extras" => "",
"option" => "",
"price" => $prods[1]["price"],
"prodid" => $prods[2]["id"],
"togo" => 0,
"unit" => 0,
"unitamount" => 1);
}
$userid = $users[0]["id"];
$ret = $queue->addProductListToQueueCore($pdo, $dateTime, null, $prodArr, 0, 's', $userid);
return $ret['queueids'];
}
private static function createDemoForADate($pdo,$dateStr,$users,$prods,$tables,$queue) {
$prodindex = 0; $prodindex = 0;
$userindex = 0; $userindex = 0;
for ($hour = 0; $hour < 18; $hour++, $hour++) { for ($hour = 0; $hour < 18; $hour++, $hour++) {
@ -113,7 +196,7 @@ class Demodata {
$userid = $users[$userindex]["id"]; $userid = $users[$userindex]["id"];
$time = $dateStr . " " . self::leadingzeronumber($hour) . ":05:20"; $time = $dateStr . " " . self::leadingzeronumber($hour) . ":05:20";
$ret = QueueContent::addProductListToQueueCore($pdo, $time, $tableid, $prodArr, 0, 's', $userid); $ret = $queue->addProductListToQueueCore($pdo, $time, $tableid, $prodArr, 0, 's', $userid);
if ($ret["status"] != "OK") { if ($ret["status"] != "OK") {
echo json_encode($ret); echo json_encode($ret);
return; return;
@ -132,22 +215,22 @@ class Demodata {
private static function createSomeBills($pdo,$tables,$users,$date) { private static function createSomeBills($pdo,$tables,$users,$date) {
$queue = new QueueContent; $queue = new QueueContent;
$tables[0]["billid"] = self::createBillOfTable($pdo, $queue, join(',', $tables[0]["queueids"]), $tables[0]["id"], 1, $users[0 % count($users)]["id"], $date . " 19:14:15"); $tables[0]["billid"] = self::createBillOfTable($pdo, $queue, implode(',', $tables[0]["queueids"]), $tables[0]["id"], 1, $users[0 % count($users)]["id"], $date . " 19:14:15");
if (count($tables) >= 3) { if ((count($tables) >= 3) && (isset($tables[2]["queueids"]))) {
$tables[2]["billid"] = self::createBillOfTable($pdo, $queue, join(',', $tables[2]["queueids"]), $tables[2]["id"], 2, $users[1 % count($users)]["id"], $date . " 19:14:25"); $tables[2]["billid"] = self::createBillOfTable($pdo, $queue, implode(',', $tables[2]["queueids"]), $tables[2]["id"], 2, $users[1 % count($users)]["id"], $date . " 19:14:25");
} }
if (count($tables) >= 5) { if ((count($tables) >= 5) && (isset($tables[4]["queueids"]))) {
$tables[4]["billid"] = self::createBillOfTable($pdo, $queue, join(',', $tables[4]["queueids"]), $tables[4]["id"], 3, $users[2 % count($users)]["id"], $date . " 19:15:15"); $tables[4]["billid"] = self::createBillOfTable($pdo, $queue, implode(',', $tables[4]["queueids"]), $tables[4]["id"], 3, $users[2 % count($users)]["id"], $date . " 19:15:15");
} }
if (count($tables) >= 7) { if ((count($tables) >= 7) && (isset($tables[6]["queueids"]))) {
$tables[6]["billid"] = self::createBillOfTable($pdo, $queue, join(',', $tables[6]["queueids"]), $tables[6]["id"], 1, $users[3 % count($users)]["id"], $date . " 20:15:15"); $tables[6]["billid"] = self::createBillOfTable($pdo, $queue, implode(',', $tables[6]["queueids"]), $tables[6]["id"], 1, $users[3 % count($users)]["id"], $date . " 20:15:15");
} }
if (count($tables) >= 8) { if ((count($tables) >= 8) && (isset($tables[7]["queueids"]))) {
$tables[7]["billid"] = self::createBillOfTable($pdo, $queue, join(',', $tables[7]["queueids"]), $tables[7]["id"], 1, $users[4 % count($users)]["id"], $date . " 20:15:15"); $tables[7]["billid"] = self::createBillOfTable($pdo, $queue, implode(',', $tables[7]["queueids"]), $tables[7]["id"], 1, $users[4 % count($users)]["id"], $date . " 20:15:15");
} }
if (count($tables) >= 10) { if ((count($tables) >= 10) && (isset($tables[9]["queueids"]))) {
$tables[9]["billid"] = self::createBillOfTable($pdo, $queue, join(',', $tables[9]["queueids"]), $tables[9]["id"], 1, $users[5 % count($users)]["id"], $date . " 21:10:00"); $tables[9]["billid"] = self::createBillOfTable($pdo, $queue, implode(',', $tables[9]["queueids"]), $tables[9]["id"], 1, $users[5 % count($users)]["id"], $date . " 21:10:00");
} }
return $tables; return $tables;
@ -163,7 +246,7 @@ class Demodata {
if ($number < 10) { if ($number < 10) {
$number = "0" . $number; $number = "0" . $number;
} }
return number; return $number;
} }
public static function handleCommand($command) { public static function handleCommand($command) {

View File

@ -1256,6 +1256,16 @@ class Version {
} }
} }
public static function upd_1528_1529($pdo, $prefix, $dbname) {
try {
self::execSql($pdo, "ALTER TABLE %customerlog% ADD clsid INT(1) NULL AFTER `userid`");
self::execSql($pdo, "ALTER TABLE %customerlog% ADD FOREIGN KEY(clsid) REFERENCES %closing% (id)");
return array(true);
} catch (PDOException $e) {
return array(false,$e);
}
}
public static $updateOrder = array( public static $updateOrder = array(
"1.3.0" => array("upd_1300_1301","1.3.1"), "1.3.0" => array("upd_1300_1301","1.3.1"),
"1.3.1" => array("upd_1301_1302","1.3.2"), "1.3.1" => array("upd_1301_1302","1.3.2"),
@ -1331,7 +1341,8 @@ class Version {
"1.5.24" => array("upd_1524_1525","1.5.25"), "1.5.24" => array("upd_1524_1525","1.5.25"),
"1.5.25" => array("upd_1525_1526","1.5.26"), "1.5.25" => array("upd_1525_1526","1.5.26"),
"1.5.26" => array("upd_1526_1527","1.5.27"), "1.5.26" => array("upd_1526_1527","1.5.27"),
"1.5.27" => array("upd_1527_1528","1.5.28") "1.5.27" => array("upd_1527_1528","1.5.28"),
"1.5.28" => array("upd_1528_1529","1.5.29")
); );
public static function runUpdateProcess($pdo,$prefix, $dbname, $untilVersion,$checkValidVersion) { public static function runUpdateProcess($pdo,$prefix, $dbname, $untilVersion,$checkValidVersion) {

View File

@ -5,7 +5,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" /> <link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
@ -13,7 +13,7 @@
<script src="php/3rdparty/jquery-1.11.3.min.js"></script> <script src="php/3rdparty/jquery-1.11.3.min.js"></script>
<script src="php/3rdparty/jquery.mobile-1.4.5.min.js"></script> <script src="php/3rdparty/jquery.mobile-1.4.5.min.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
<link rel="stylesheet" href="php/3rdparty/jqueryui1-11-4/jquery-ui.min.css" /> <link rel="stylesheet" href="php/3rdparty/jqueryui1-11-4/jquery-ui.min.css" />
<script src="php/3rdparty/jqueryui1-11-4/jquery-ui.min.js"></script> <script src="php/3rdparty/jqueryui1-11-4/jquery-ui.min.js"></script>

View File

@ -5,7 +5,7 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" /> <link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
@ -13,7 +13,7 @@
<link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" /> <link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" />
<script src="php/3rdparty/jquery-1.11.3.min.js"></script> <script src="php/3rdparty/jquery-1.11.3.min.js"></script>
<script src="php/3rdparty/jquery.mobile-1.4.5.min.js"></script> <script src="php/3rdparty/jquery.mobile-1.4.5.min.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
</head> </head>

View File

@ -7,16 +7,16 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" /> <link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
<link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" /> <link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" />
<script src="php/3rdparty/jquery-2.0.3.min.js"></script> <script src="php/3rdparty/jquery-2.0.3.min.js"></script>
<script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script> <script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
<script src="elements/product.js?v=1.5.28"></script> <script src="elements/product.js?v=1.5.29"></script>
<script src="elements/extra.js?v=1.5.28"></script> <script src="elements/extra.js?v=1.5.29"></script>
<link href="php/3rdparty/hayageek_uploadfile.css" rel="stylesheet"> <link href="php/3rdparty/hayageek_uploadfile.css" rel="stylesheet">
<script src="php/3rdparty/hayageek_jquery_uploadfile.js"></script> <script src="php/3rdparty/hayageek_jquery_uploadfile.js"></script>
</head> </head>

View File

@ -4,7 +4,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" href="css/ospage.css" /> <link rel="stylesheet" href="css/ospage.css" />
<link rel="stylesheet" href="css/tablepanel.css" /> <link rel="stylesheet" href="css/tablepanel.css" />
@ -15,7 +15,7 @@
<script src="php/3rdparty/jquery-2.2.4.min.js"></script> <script src="php/3rdparty/jquery-2.2.4.min.js"></script>
<script src="php/3rdparty/jqueryui1-12-0/jquery-ui.min.js"></script> <script src="php/3rdparty/jqueryui1-12-0/jquery-ui.min.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
<script> <script>

View File

@ -7,14 +7,14 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" /> <link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
<link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" /> <link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" />
<script src="php/3rdparty/jquery-2.0.3.min.js"></script> <script src="php/3rdparty/jquery-2.0.3.min.js"></script>
<script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script> <script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
</head> </head>
<body> <body>

View File

@ -7,14 +7,14 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" /> <link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
<link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" /> <link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" />
<script src="php/3rdparty/jquery-2.0.3.min.js"></script> <script src="php/3rdparty/jquery-2.0.3.min.js"></script>
<script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script> <script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
<script src="elements/rating.js"></script> <script src="elements/rating.js"></script>
</head> </head>
@ -28,10 +28,10 @@ var REP_TABLE_REPORTS_INFO = ["In diesem Bereich werden alle Buchungen, Umbuchun
"This area displays all postings, transfers, and cancellations for all tables since the last closing.", "This area displays all postings, transfers, and cancellations for all tables since the last closing.",
"Esta área visualiza todas las contabilizaciones, traslados y anulaciones de todas las tablas desde la última cerra de día."]; "Esta área visualiza todas las contabilizaciones, traslados y anulaciones de todas las tablas desde la última cerra de día."];
var REP_ORDER_REPORTS = ["Aktuelle Bestellungen","Current orders","Ordenes de momento"]; var REP_ORDER_REPORTS = ["Aktuelle Bestellungen","Current orders","Ordenes de momento"];
var REP_ORDER_REPORTS_INFO = ["In diesem Bereich werden alle Bestellungen seit der letzten Tageserfassung aufgeführt.","In this area yu can see all orders since the last closing.","En esta area puede ver todas las ordenes desde la última cerrada"]; var REP_ORDER_REPORTS_INFO = ["In diesem Bereich werden alle Bestellungen seit der letzten Tageserfassung aufgeführt. Auf Gäste ausgestellt Rechnungen werden unabh. von ihrem Bezahlstatus als bezahlt betrachtet.","In this area yu can see all orders since the last closing.","En esta area puede ver todas las ordenes desde la última cerrada"];
var REP_USER = ["Benutzer","User","Usario"]; var REP_USER = ["Benutzer","User","Usario"];
var REP_USER_TXT = ["Diese Übersicht umfasst den derzeitigen Brutto-Kassenbestand pro Kasse inkl. aller Zahlungswege und Ein-/Auslagen.", var REP_USER_TXT = ["Diese Übersicht umfasst den derzeitigen Brutto-Kassenbestand pro Kasse inkl. aller Zahlungswege und Ein-/Auslagen. Auf Gäste ausgestellt Rechnungen werden unabh. von ihrem Bezahlstatus eingerechnet.",
"This overview contains the current sum of all paydesks including all payment types and cash inserts/extracs.", "This overview contains the current sum of all paydesks including all payment types and cash inserts/extracs and guest bills.",
"Esta table contiene todos las cajas incluyendo todas los tipos the pagamientos"]; "Esta table contiene todos las cajas incluyendo todas los tipos the pagamientos"];
var REP_TODAY = ["Heute","Today","Hoy"]; var REP_TODAY = ["Heute","Today","Hoy"];
var REP_YESTERDAY = ["Gestern","Yesterday","Ayer"]; var REP_YESTERDAY = ["Gestern","Yesterday","Ayer"];

View File

@ -5,7 +5,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" /> <link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
@ -14,7 +14,7 @@
<script src="php/3rdparty/jquery.mobile-1.4.5.min.js"></script> <script src="php/3rdparty/jquery.mobile-1.4.5.min.js"></script>
<script src="elements/tablemap.js"></script> <script src="elements/tablemap.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
<link rel="stylesheet" href="php/3rdparty/jqueryui1-11-4/jquery-ui.min.css" /> <link rel="stylesheet" href="php/3rdparty/jqueryui1-11-4/jquery-ui.min.css" />
<script src="php/3rdparty/jqueryui1-11-4/jquery-ui.min.js"></script> <script src="php/3rdparty/jqueryui1-11-4/jquery-ui.min.js"></script>
@ -623,7 +623,7 @@ function bindCancelButtn() {
var year = date.getFullYear(); var year = date.getFullYear();
var dateStr = year + "-" + month + "-" + day; var dateStr = year + "-" + month + "-" + day;
setTimeout(function(){document.location.href = "reservation.html?v=1.5.28&date=" + dateStr;},500); setTimeout(function(){document.location.href = "reservation.html?v=1.5.29&date=" + dateStr;},500);
}); });
} }

View File

@ -14,7 +14,7 @@
<link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" /> <link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" />
<script src="php/3rdparty/jquery-2.0.3.min.js"></script> <script src="php/3rdparty/jquery-2.0.3.min.js"></script>
<script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script> <script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
</head> </head>
<body> <body>
@ -30,7 +30,7 @@ var SUM_REASON = ["Grund","Reason","Razón"];
var SUM_CANCEL_ITEM = ["Stornierung","Cancellation","Revocación"]; var SUM_CANCEL_ITEM = ["Stornierung","Cancellation","Revocación"];
var SUM_CANCELLATION_OK = ["Die Zahlung wurde in OrderSprinter storniert.","The payment was cancelled in OrderSprinter.","El pago se canceló en OrderSprinter."]; var SUM_CANCELLATION_OK = ["Die Zahlung wurde in OrderSprinter storniert.","The payment was cancelled in OrderSprinter.","El pago se canceló en OrderSprinter."];
var nextpage = "paydesk.html?version=1.5.28"; var nextpage = "paydesk.html?version=1.5.29";
var lang; var lang;
@ -84,10 +84,10 @@ function setLanguage(language) {
if (nextPage == "p") { if (nextPage == "p") {
$("#nextpagebtntxt").html(SUM_TO_PAYMENT[lang]); $("#nextpagebtntxt").html(SUM_TO_PAYMENT[lang]);
nextpage = "paydesk.html?t=" + tableid + "&version=1.5.28"; nextpage = "paydesk.html?t=" + tableid + "&version=1.5.29";
} else { } else {
$("#nextpagebtntxt").html(SUM_TO_ORDER[lang]); $("#nextpagebtntxt").html(SUM_TO_ORDER[lang]);
nextpage = "waiter.html?version=1.5.28"; nextpage = "waiter.html?version=1.5.29";
} }
var txt = "<table class='viewtable'>"; var txt = "<table class='viewtable'>";

View File

@ -5,7 +5,7 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" /> <link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
@ -13,7 +13,7 @@
<link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" /> <link rel="stylesheet" href="php/3rdparty/jquery.mobile-1.4.0.min.css" type="text/css" />
<script src="php/3rdparty/jquery-2.0.3.min.js"></script> <script src="php/3rdparty/jquery-2.0.3.min.js"></script>
<script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script> <script src="php/3rdparty/jquery.mobile-1.4.0.min.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
<style> <style>
#tableWithPreparedProds,#tableWithDeliveredEntries,#headertableToCook #tableWithPreparedProds,#tableWithDeliveredEntries,#headertableToCook

View File

@ -5,7 +5,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" /> <link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
@ -13,7 +13,7 @@
<script src="php/3rdparty/jquery-1.11.3.min.js"></script> <script src="php/3rdparty/jquery-1.11.3.min.js"></script>
<script src="php/3rdparty/jquery.mobile-1.4.5.min.js"></script> <script src="php/3rdparty/jquery.mobile-1.4.5.min.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
<link rel="stylesheet" href="php/3rdparty/jqueryui1-11-4/jquery-ui.min.css" /> <link rel="stylesheet" href="php/3rdparty/jqueryui1-11-4/jquery-ui.min.css" />
<script src="php/3rdparty/jqueryui1-11-4/jquery-ui.min.js"></script> <script src="php/3rdparty/jqueryui1-11-4/jquery-ui.min.js"></script>

View File

@ -5,7 +5,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.28"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" /> <link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" /> <link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
@ -13,7 +13,7 @@
<script src="php/3rdparty/jquery-1.11.3.min.js"></script> <script src="php/3rdparty/jquery-1.11.3.min.js"></script>
<script src="php/3rdparty/jquery.mobile-1.4.5.min.js"></script> <script src="php/3rdparty/jquery.mobile-1.4.5.min.js"></script>
<script src="utilities.js?v=1.5.28"></script> <script src="utilities.js?v=1.5.29"></script>
<link rel="stylesheet" href="php/3rdparty/jqueryui1-11-4/jquery-ui.min.css" /> <link rel="stylesheet" href="php/3rdparty/jqueryui1-11-4/jquery-ui.min.css" />
<script src="php/3rdparty/jqueryui1-11-4/jquery-ui.min.js"></script> <script src="php/3rdparty/jqueryui1-11-4/jquery-ui.min.js"></script>

File diff suppressed because one or more lines are too long

View File

@ -4,7 +4,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel"> <meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v={VERSION}"> <link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.5.29">
<link rel="stylesheet" href="css/ospage.css" /> <link rel="stylesheet" href="css/ospage.css" />
<link rel="stylesheet" href="css/tablepanel.css" /> <link rel="stylesheet" href="css/tablepanel.css" />
@ -16,7 +16,7 @@
<link rel="stylesheet" href="css/extraspanel.css" /> <link rel="stylesheet" href="css/extraspanel.css" />
<link rel="stylesheet" href="css/actpanel.css" /> <link rel="stylesheet" href="css/actpanel.css" />
<link rel="stylesheet" href="css/paypanel.css" /> <link rel="stylesheet" href="css/paypanel.css" />
<link rel="stylesheet" href="css/numfield.css?v={VERSION}" /> <link rel="stylesheet" href="css/numfield.css?v=1.5.29" />
<link rel="stylesheet" href="php/3rdparty/jqueryui1-12-0/jquery-ui.min.css" /> <link rel="stylesheet" href="php/3rdparty/jqueryui1-12-0/jquery-ui.min.css" />
<script src="php/3rdparty/jquery-2.2.4.min.js"></script> <script src="php/3rdparty/jquery-2.2.4.min.js"></script>