OrderSprinter 1.4.17

This commit is contained in:
Geno 2020-11-19 23:10:46 +01:00
parent 5e331fb9cc
commit 7335dbb3bc
34 changed files with 210 additions and 90 deletions

View File

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

View File

@ -90,10 +90,10 @@ if (isset($_POST['code'])) {
} else {
echo "<html>";
echo "<head><title>Installation Gastsystem</title>";
echo '<link rel="stylesheet" type="text/css" href="css/gueststyle.css?v=1.4.16">';
echo '<link rel="stylesheet" type="text/css" href="css/gueststyle.css?v=1.4.17">';
echo "</head>";
echo "<body><div class=surround>";
echo "<span class=headerline>Installation OrderSprinter-Gastsystem 1.4.16</span><br><br>";
echo "<span class=headerline>Installation OrderSprinter-Gastsystem 1.4.17</span><br><br>";
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 "</form></div></html>";

Binary file not shown.

View File

@ -18,9 +18,13 @@ Es werden immer die letzten maximal drei Backups gespeichert bzw. aufbewahrt.
Im Skript müssen am Anfang einige Variablen angepasst werden:
- der Gerätenamen des Sticks
- die Zugangsparameter der Datenbank (lassen sich aus der config.php) entnehmen, wenn nicht mehr bekannt.
- die Zugangsparameter der Datenbank (lassen sich aus der config.php) entnehmen, wenn nicht mehr bekannt. Die Angabe ist nur erforderlich, wenn mysqldump statt das OrderSprinter-internen Backup verwendet werden soll.
- die Server-Baseadresse
- der Remoteaccess-Code, wie er zuvor in der Verwaltungsansicht eingestellt werden muss
- das Format json oder zip: Wurde in der OrderSprinter-Konfiguration ein tmp-Verzeichnis festgelegt, so werden komprimierte Backups erzeugt (zip), anderenfalls ist json einzutragen.
Im Skript ist standardmäßig die OrderSprinter-interne Backuperstellung aktiviert (Zeile, die mit "wget" beginnt). Alternativ kann auch das MySQL-Dump verwendet werden, dazu ist die mit wget
beginnende Zeile einzukommentieren und die Kommentierung der Zeile, die mit "mysqldump" beginnt, zu entfernen.
Es wird empfohlen, die Ausführung des Skripts über einen cron-Job regelmäßig und automatisisiert
zu starten:

View File

@ -8,6 +8,7 @@ user="Benutzer"
password="DasPasswort"
serverbase="http://localhost/ordersprinter"
remoteaccesscode="123"
format="json"
if grep -qs "$mount" /proc/mounts; then
echo "Der USB-Stick ist bereits eingehaengt"
@ -18,11 +19,11 @@ else
echo "Der USB-Stick konnte eingehaengt werden."
# Halte die letzten 3 Sicherungen der DB vor:
if [ -f /mnt/db-dump-1.json ]
then mv /mnt/db-dump-1.json /mnt/db-dump-2.json
if [ -f /mnt/db-dump-1.$format ]
then mv /mnt/db-dump-1.$format /mnt/db-dump-2.$format
fi
if [ -f /mnt/db-dump.json ]
then mv /mnt/db-dump.json /mnt/db-dump-1.json
if [ -f /mnt/db-dump.$format ]
then mv /mnt/db-dump.$format /mnt/db-dump-1.$format
fi
# Halte die letzten 3 Sicherungen des Kassenbuchs vor
@ -39,7 +40,7 @@ else
# vom OrderSprinter eingelesen werden kann).
#
#
wget --post-data "remoteaccesscode=$remoteaccesscode" -O /mnt/db-dump.json 2>>/dev/null "$serverbase/php/contenthandler.php?module=admin&command=autobackup"
wget --post-data "remoteaccesscode=$remoteaccesscode" -O /mnt/db-dump.$format 2>>/dev/null "$serverbase/php/contenthandler.php?module=admin&command=autobackup"
#
#
# Sicherung der Datenbank direkt über mysqldump:

View File

@ -85,7 +85,7 @@ class Installer {
}
Database::dropTables($pdo);
Database::createEmptyTables($pdo, $prefix);
Database::setVersion($pdo,$prefix,"1.4.16");
Database::setVersion($pdo,$prefix,"1.4.17");
Database::setAccessPassword($pdo,$prefix,$adminpass);
Database::setRefreshRate($pdo,$prefix,"5"); // default: 5 times per hour
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 name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.16">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.17">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
html{overflow-y:scroll}.ospage{font-family:Helvetica,Arial,Verdana,sans-serif;display:-webkit-flex;display:flex;-webkit-flex-flow:row wrap;flex-flow:row wrap;text-align:center;color:white}.ospage>*{padding:10px;flex:100%}.tableospage{width:100%;height:40px;background-color:black;color:white;text-align:center;vertical-align:middle;display:inline-table}.main{text-align:left;background:cornflowerblue;-webkit-flex:5;flex:5;-webkit-flex-flow:nowrap;flex-flow:nowrap}.tablemain{text-align:left;background:cornflowerblue;vertical-align:top;width:65%}#rightsidearea{vertical-align:top;background:violet;color:black;width:15%}.header{background:black;font-weight:bold;display:inline-table;vertical-align:middle;padding:10px}.footer{display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center;-webkit-flex-wrap:row nowrap;flex-flow:row nowrap;background:black;-webkit-align-items:stretch;align-items:stretch}.tablefooter{padding:10px;background-color:black;vertical-align:middle;display:inline-table;width:100%;height:15px}.tabledashheader{padding:10px;background-color:black;vertical-align:middle;display:inline-table;width:100%;height:15px;text-align:center}.dashheader{color:white;text-align:center;font-weight:bold}#loggedinuser{float:left;color:white;background-color:black}#versioninfo{color:white;float:right;background-color:black}.floatright{float:right}.aside1{background:moccasin;color:black;width:0;-webkit-flex:2;flex:2}.tableaside1{background:moccasin;color:black;width:20%;vertical-align:top}.tablepanelheader{width:100%;height:40px;color:white;background-color:black;text-align:center;vertical-align:middle}.aside2{background:violet;-webkit-flex:1;flex:1}@media all and (min-width:400px){.aside1{order:1}.main{order:2}.aside2{order:3}.ordereditem-sentcontainer{order:4}.waitermsg{order:5}.footer{order:6}}.input100{width:100%;height:50px;font-weight:bold;text-align:center}.input90{width:89%;height:50px;font-weight:bold;text-align:center}.input50{width:49%;height:50px;font-weight:bold;text-align:center}.area10{width:9%;height:50px;text-align:center}.inputwhite[type="text"]{background-color:white}.inputwhite[type="submit"]{background-color:white}.inputgreen[type="text"]{background-color:#0f0}.inputgreen[type="submit"]{background-color:#0f0}.inputblue[type="text"]{background-color:#8ee5ee}.inputblue[type="submit"]{background-color:#8ee5ee}.infoarea{width:49%;background-color:#afa;color:black;font-weight:bold;font-size:20px;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center;-webkit-align-items:center;align-items:center;border:2px solid red}.mainmenuchoice{list-style-type:none;padding:0;border:1px solid #ddd}.mainmenuitem{padding:8px 16px;border-bottom:1px solid #ddd;background-color:#fff6b5;height:40px;font-size:16px;font-weight:bold}.mainmenuitem:hover{background-color:#eed33f}.commentitem:last-child{border-bottom:0}.commentitem{padding:8px 16px;border-bottom:1px solid #ddd;background-color:#fff6b5;height:40px;font-size:16px;font-weight:bold}.commentitem:last-child{border-bottom:0}.buttonarea{box-shadow:10px 10px 5px #888}
html{overflow-y:scroll}.ospage{font-family:Helvetica,Arial,Verdana,sans-serif;display:-webkit-flex;display:flex;-webkit-flex-flow:row wrap;flex-flow:row wrap;text-align:center;color:white}.ospage>*{padding:10px;flex:100%}.tableospage{width:100%;height:40px;background-color:black;color:white;text-align:center;vertical-align:middle;display:inline-table}.main{text-align:left;background:cornflowerblue;-webkit-flex:5;flex:5;-webkit-flex-flow:nowrap;flex-flow:nowrap}.tablemain{text-align:left;background:cornflowerblue;vertical-align:top;width:65%}#rightsidearea{vertical-align:top;background:violet;color:black;width:15%}.header{background:black;font-weight:bold;display:inline-table;vertical-align:middle;padding:10px}.footer{display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center;-webkit-flex-wrap:row nowrap;flex-flow:row nowrap;background:black;-webkit-align-items:stretch;align-items:stretch}.tablefooter{padding:10px;background-color:black;vertical-align:middle;display:inline-table;width:100%;height:15px;box-sizing:border-box}.tabledashheader{padding:10px;background-color:black;vertical-align:middle;display:inline-table;width:100%;height:15px;text-align:center}.dashheader{color:white;text-align:center;font-weight:bold}#loggedinuser{float:left;color:white;background-color:black}#versioninfo{color:white;float:right;background-color:black}.floatright{float:right}.aside1{background:moccasin;color:black;width:0;-webkit-flex:2;flex:2}.tableaside1{background:moccasin;color:black;width:20%;vertical-align:top}.tablepanelheader{width:100%;height:40px;color:white;background-color:black;text-align:center;vertical-align:middle}.aside2{background:violet;-webkit-flex:1;flex:1}@media all and (min-width:400px){.aside1{order:1}.main{order:2}.aside2{order:3}.ordereditem-sentcontainer{order:4}.waitermsg{order:5}.footer{order:6}}.input100{width:100%;height:50px;font-weight:bold;text-align:center}.input90{width:89%;height:50px;font-weight:bold;text-align:center}.input50{width:49%;height:50px;font-weight:bold;text-align:center}.area10{width:9%;height:50px;text-align:center}.inputwhite[type="text"]{background-color:white}.inputwhite[type="submit"]{background-color:white}.inputgreen[type="text"]{background-color:#0f0}.inputgreen[type="submit"]{background-color:#0f0}.inputblue[type="text"]{background-color:#8ee5ee}.inputblue[type="submit"]{background-color:#8ee5ee}.infoarea{width:49%;background-color:#afa;color:black;font-weight:bold;font-size:20px;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center;-webkit-align-items:center;align-items:center;border:2px solid red}.mainmenuchoice{list-style-type:none;padding:0;border:1px solid #ddd}.mainmenuitem{padding:8px 16px;border-bottom:1px solid #ddd;background-color:#fff6b5;height:40px;font-size:16px;font-weight:bold}.mainmenuitem:hover{background-color:#eed33f}.commentitem:last-child{border-bottom:0}.commentitem{padding:8px 16px;border-bottom:1px solid #ddd;background-color:#fff6b5;height:40px;font-size:16px;font-weight:bold}.commentitem:last-child{border-bottom:0}.buttonarea{box-shadow:10px 10px 5px #888}

View File

@ -3,7 +3,7 @@
<p>Bei der Bestellaufnahme wählt der Kellner die gewünschten Produkte aus. Dabei kann er <b>vor</b> dem Anklicken eines Produktes folgende Angaben machen:
<ul>
<li>Anzahl: Über den Plus- und Minus-Button kann er die Anzahl des Produktes wählen. Wird das Produkt anschließend angeklickt, so wird es mit der gewählten Anzahl in die Liste 'Neue Orders' eingefügt.
<li>Anzahl: Über den Plus- und Minus-Button kann er die Anzahl des Produktes wählen. Wird das Produkt anschließend angeklickt, so wird es mit der gewählten Anzahl in die Liste 'Neue Orders' eingefügt. Alternativ kann man auch in das weiße Feld zwischen den Plus- und Minus-Buttons klicken. In diesem Fall erscheint ein eigenes Fenster, in dem man die Anzahl festlegen kann. Anschließend wird das Produkt so behandelt, als wäre es nach Setzen der Anzahl angeklickt worden. Die Felder für die Wahl der Menge lassen sich ausblenden (Festlegung in den persönlichen Einstellungen).
<li>Bemerkung: Es kann ein freier Kommentar eingegeben oder ein Kommentar aus einer vordefinierten Liste (in der Angebotsansicht einstellbar) ausgewählt werden.
</ul>
@ -15,4 +15,6 @@
<li><i>Arbeitsbon</i>: Die Bestellung wird an den Server übermittelt und Arbeitsbons gedruckt. Der Benutzer bleibt in der Bestellansicht.
</ul>
<p>Abänderung vor der Übermittlung an den Server: Die Bestellung wird vor dem Versand an den Server in einer Liste 'Neue Orders' gespeichert. Die Produkteinträge können angeklickt und je nach Rechten des eingebuchten Benutzers verändert werden.
<p>Abänderung vor der Übermittlung an den Server: Die Bestellung wird vor dem Versand an den Server in einer Liste 'Neue Orders' gespeichert. Die Produkteinträge können angeklickt und je nach Rechten des eingebuchten Benutzers verändert werden.
Zu jedem Tisch gibt es ein Tischprotokoll, welches erst bei der Erstellung einer Tageserfassung gelöscht wird. In diesem Tischprotokoll listet alle Bestell-, Storno- und Abrechnungsvorgänge auf.

View File

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

View File

@ -9,8 +9,8 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.16">
<link rel="stylesheet" type="text/css" href="css/numfield.css?v=1.4.16">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.17">
<link rel="stylesheet" type="text/css" href="css/numfield.css?v=1.4.17">
<link rel="stylesheet" href="php/3rdparty/orderstyle/orderstyle.min.css" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
@ -215,7 +215,7 @@ function handleResultOfInstallCheck(is_installed) {
if (is_installed == "Yes") {
useInstallation();
} else {
setTimeout(function(){document.location.href = "install.html?v=1.4.16"},500);
setTimeout(function(){document.location.href = "install.html?v=1.4.17"},500);
}
}

View File

@ -727,7 +727,7 @@ $(document).ready(function() {
<tr id=updateline>
<td>&nbsp;</td>
<td align=center>
<button id="updatebtn">Update -> 1.4.16</button>
<button id="updatebtn">Update -> 1.4.17</button>
<span id="updateinprogresstxt" style="display:none;">Update... bitte warten.</span>
</td>
<td>&nbsp;</td>

View File

@ -413,7 +413,7 @@ $zones[] = $timezone_identifiers[$i];
echo json_encode($zones);
} else if ($command == 'update') {
set_time_limit(60*30);
$installerVersion = "1.4.16";
$installerVersion = "1.4.17";
$admin = new InstallAdmin();
$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 name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.16">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.17">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />

View File

@ -5,7 +5,7 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.16">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.17">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />
@ -355,6 +355,9 @@ var MAN_SHOWPAYMENT6 = ["Lastschrift","debitsCard","Débito"];
var MAN_SHOWPAYMENT7 = ["Hotelzimmer","Hotel room","Habitación"];
var MAN_SHOWPAYMENT8 = ["Gast","Guest","Huésped"];
var MAN_DBLOG = ["Debug-Logging","Debug logging","Debug logging"];
var MAN_PRINT_EXTRAS = ["Extras auf Kassenbon","Print extras on receipts","Imprimir extras en tiquet"];
var MAN_PRINT_EXTRAS_HINT = ["Hinweis: Extras auf Kassenbon erst ab Printserverversion 1.4.17 möglich.","Hint: Extras on receipt require printserver version 1.4.17+","Nota: Imprimir extras exije printserver 1.4.17+"];
var MAN_FORCE_PRINT = ["Erzwinge Bondruck","Force print of receipt","Siempre imprimir tique"];
var MAN_PRICE_IN_LIST = ["Preisangabe neben Produkt","List price next to product","Mostrar precio en lista de productos"];
var MAN_GUEST_JOB_PRINT = ["Gastbestelljob drucken","Print guest order","Imprimir orden de remote"];
var MAN_ASK_DAYCODE = ["Abfrage Tageslosung","Require input of day code in guest system","Pregunta código del dia en sistema de huéspedes"];
@ -396,9 +399,18 @@ var MAN_TMPDIRHINT = ["Wird das PHP-Tmp-Verzeichnis angegeben, so können z.B. k
"If the PHP tmp directory is set it is possible to create compressed backups and more. Usually the default value of the PHP framework should fit, but sometimes the providers change the tmp directory without adapting the PHP framework!",
"Si el tmp esta espcificado es posible crear backups comprimidos por ejemplo. Normalmente el valor default es corecto pero de vez en cuando los providers cambian el valor sin adaptar el PHP framework!"];
var MAN_IMPORT_IN_PROGRESS = ["Der Importvorgang ist aktiv. Bitte warten...","The import process is activated. Please wait...","El proceso del importe esta activo. Por favor espere un poco...."];
var MAN_DAYNAMES = [
["Montag","Monday","Lunes"],
["Dienstag","Tuesday","Martes"],
["Mittwoch","Wednesday","Miércoles"],
["Donnerstag","Thursday","Jueves"],
["Freitag","Friday","Viernes"],
["Samstag","Saturday","Sábado"],
["Sonntag","Sunday","Domingo"]
];
var lang = 0;
var generalVals = [12,2,0,3,0,1,1,0,0,1, 0,50,20,10,1,0,0,0,1,0,1,0,0,1,1, 1,1,1,1,1,1,1,1,1,1, 1,2,3, 1,0, 1,0,1, 1,1,0];
var generalVals = [12,2,0,3,0,1,1,0,0,1, 0,50,20,10,1,0,0,0,1,0,1,0,0,1,1, 1,1,1,1,1,1,1,1,1,1, 1,2,3, 1,0, 1,0,1, 1,1,0,0, 0];
var numberOfClosings = 0;
@ -512,7 +524,9 @@ var generalValuesSettings = [
["askdaycode",MAN_ASK_DAYCODE[lang],"s",43],
["asktablecode",MAN_ASK_TABLECODE[lang],"s",44],
["guesttimeout",MAN_GUEST_TIMEOUT[lang],"i",0,""],
["showdaycode",MAN_SHOW_DAYCODE[lang],"s",45]
["showdaycode",MAN_SHOW_DAYCODE[lang],"s",45],
["forceprint",MAN_FORCE_PRINT[lang],"s",46],
["printextras",MAN_PRINT_EXTRAS[lang],"s",47]
];
var predef = "";
@ -673,6 +687,7 @@ function setLanguage(l) {
$("#printerInstanceHint").html(MAN_PRINSTANCE_HINT[l]);
$("#guesttimeouthint").html(MAN_GUESTTIMEOUT_HINT[l]);
$("#printextrashint").html(MAN_PRINT_EXTRAS_HINT[l]);
}
function createMonthSelection(label) {
@ -793,6 +808,8 @@ function insertGeneralConfigItems(configResult) {
$("#partOfBeepCooked").html(createYesNo("beepcooked",MAN_BEEP_COOKED, values.beepcooked));
$("#partOfRestaurantmode").html(createYesNo("restaurantmode",MAN_RESTAURANT_MODE, values.restaurantmode));
$("#partOfDblog").html(createYesNo("dblog",MAN_DBLOG, values.dblog));
$("#partOfForceprint").html(createYesNo("forceprint",MAN_FORCE_PRINT, values.forceprint));
$("#partOfPrintextras").html(createYesNo("printextras",MAN_PRINT_EXTRAS, values.printextras));
$("#partOfPriceinlist").html(createYesNo("priceinlist",MAN_PRICE_IN_LIST, values.priceinlist));
$("#partOfGuestjobprint").html(createYesNo("guestjobprint",MAN_GUEST_JOB_PRINT, values.guestjobprint));
$("#partOfAskdaycode").html(createYesNo("askdaycode",MAN_ASK_DAYCODE, values.askdaycode));
@ -887,6 +904,8 @@ function insertGeneralConfigItems(configResult) {
generalVals[43] = values.askdaycode;
generalVals[44] = values.asktablecode;
generalVals[45] = values.showdaycode;
generalVals[46] = values.forceprint;
generalVals[47] = values.printextras;
defaulttmp = values.defaulttmp;
@ -1253,7 +1272,7 @@ function initRestoreFileUpload() {
} else {
alert("Import war erfolgreich.");
setTimeout(function(){
document.location.href = "index.html?v=1.4.16";
document.location.href = "index.html?v=1.4.17";
},250);
}
},
@ -1791,9 +1810,9 @@ function handleUpdateCheckResult(answer) {
var millis=getMillis();
setTimeout(function(){
document.location.href = "install.html?v=1.4.16&mode=onlyupdate&n=" + millis;
document.location.href = "install.html?v=1.4.17&mode=onlyupdate&n=" + millis;
},250);
document.location.href = "install.html?v=1.4.16&mode=onlyupdate&n=" + millis;
document.location.href = "install.html?v=1.4.17&mode=onlyupdate&n=" + millis;
}
function handleUpdateReplace(answer) {
@ -2284,6 +2303,7 @@ function displayReceivedClosings(closingresult) {
$.each(closingresult.msg, function (i, aClosing) {
var id = aClosing.id;
var closingDate = aClosing.closingDate;
var dayname = MAN_DAYNAMES[aClosing.daynameno - 1][lang];
var remark = aClosing.remark;
var totalsum = aClosing.totalsum;
var cashsum = aClosing.cashsum;
@ -2291,10 +2311,12 @@ function displayReceivedClosings(closingresult) {
var taxessums = aClosing.taxessums;
var cashops = aClosing.cashops;
var closDateTxt = closingDate + ' (' + dayname + ')';
if (remark != "") {
closingParts += createClosingPart(id + ": " + closingDate + ": " + remark,id,totalsum,cashsum,usersums,taxessums,cashops);
closingParts += createClosingPart(id + ": " + closDateTxt + ": " + remark,id,totalsum,cashsum,usersums,taxessums,cashops);
} else {
closingParts += createClosingPart(id + ": " + closingDate,id,totalsum,cashsum,usersums,taxessums,cashops);
closingParts += createClosingPart(id + ": " + closDateTxt,id,totalsum,cashsum,usersums,taxessums,cashops);
}
});
$("#partofclosings").html(closingParts);
@ -3285,6 +3307,10 @@ $(document).on("pageinit", "#admin-page", function () {
<input type="password" value="" data-mini="true" id="remoteaccesscode" class="genConfigEl"/>
</div>
<div id="partOfForceprint"></div>
<div id="partOfPrintextras"></div>
<i id="printextrashint" style="padding-left: 50px;padding-right: 50px;">Hinweis: erfordert 1.4.17</i>
<div id="partOfRestaurantmode"></div>
<i id=restmodehint style="padding-left: 50px;padding-right: 50px;">Hinweis: siehe Anleitung</i>

File diff suppressed because one or more lines are too long

View File

@ -1097,6 +1097,8 @@ class Admin {
$restaurantmode = CommonUtils::getConfigValueStmt($pdo,$stmt,"restaurantmode",1);
$dblog = CommonUtils::getConfigValueStmt($pdo,$stmt,"dblog",1);
$printextras = CommonUtils::getConfigValueStmt($pdo,$stmt,"printextras",0);
$forceprint = CommonUtils::getConfigValueStmt($pdo,$stmt,"forceprint",0);
$priceinlist = CommonUtils::getConfigValueStmt($pdo,$stmt,"priceinlist",0);
$startprodsearch = CommonUtils::getConfigValueStmt($pdo,$stmt,"startprodsearch",3);
@ -1169,7 +1171,7 @@ class Admin {
"paydeskid" => $paydeskid, "aeskey" => $aeskey, "certificatesn" => $certificatesn, "rksvserver" => $rksvserver, "addreceipttoprinter" => $addreceipttoprinter,
"printandqueuejobs" => $printandqueuejobs, "cashenabled" => $cashenabled, "returntoorder" => $returntoorder, "beepcooked" => $beepcooked,"restaurantmode" => $restaurantmode,
"discountname1" => $discountname1,"discountname2" => $discountname2,"discountname3" => $discountname3, "dblog" => $dblog,"startprodsearch" => $startprodsearch,
"closshowci" => $closshowci, "closshowpaytaxes" => $closshowpaytaxes, "closshowprods" => $closshowprods,"hosttext" => $hosttext,
"closshowci" => $closshowci, "closshowpaytaxes" => $closshowpaytaxes, "closshowprods" => $closshowprods,"hosttext" => $hosttext, "forceprint" => $forceprint, "printextras" => $printextras,
"showpayment2" => $showpayment2,
"showpayment3" => $showpayment3,
"showpayment4" => $showpayment4,
@ -1273,7 +1275,7 @@ class Admin {
$view = "preferences.html";
}
echo json_encode($view . "?v=1.4.16");
echo json_encode($view . "?v=1.4.17");
}
}
@ -1484,27 +1486,27 @@ class Admin {
if (!self::isOnlyRatingUser($rights, $right_rating, true)) {
if ($_SESSION['modus'] == 0) {
if ($_SESSION['right_waiter']) { $mainMenu[] = array("name" => $waitertxt[$lang], "link" => "waiter.html?v=1.4.16"); };
if ($_SESSION['right_waiter']) { $mainMenu[] = array("name" => $waitertxt[$lang], "link" => "waiter.html?v=1.4.17"); };
} else {
if ($_SESSION['right_waiter']) { $mainMenu[] = array("name" => $waiterdesktxt[$lang], "link" => "waiterdesktop.php?v=1.4.16"); };
if ($_SESSION['right_waiter']) { $mainMenu[] = array("name" => $waiterdesktxt[$lang], "link" => "waiterdesktop.php?v=1.4.17"); };
}
if ($_SESSION['right_kitchen']) { $mainMenu[] = array("name" => $kitchentxt[$lang], "link" => "kitchen.html?v=1.4.16"); };
if ($_SESSION['right_bar']) { $mainMenu[] = array("name" => "Bar", "link" => "bar.html?v=1.4.16"); };
if ($_SESSION['right_supply']) { $mainMenu[] = array("name" => $supplytxt[$lang], "link" => "supplydesk.html?v=1.4.16"); };
if ($_SESSION['right_kitchen']) { $mainMenu[] = array("name" => $kitchentxt[$lang], "link" => "kitchen.html?v=1.4.17"); };
if ($_SESSION['right_bar']) { $mainMenu[] = array("name" => "Bar", "link" => "bar.html?v=1.4.17"); };
if ($_SESSION['right_supply']) { $mainMenu[] = array("name" => $supplytxt[$lang], "link" => "supplydesk.html?v=1.4.17"); };
if ($_SESSION['modus'] == 0) {
if ($_SESSION['right_paydesk']) { $mainMenu[] = array("name" => $paydesktxt[$lang], "link" => "paydesk.html?v=1.4.16"); };
if ($_SESSION['right_paydesk']) { $mainMenu[] = array("name" => $paydesktxt[$lang], "link" => "paydesk.html?v=1.4.17"); };
}
if ($_SESSION['right_statistics']) { $mainMenu[] = array("name" => $stattxt[$lang], "link" => "reports.html?v=1.4.16"); };
if ($_SESSION['right_bill']) { $mainMenu[] = array("name" => $bontxt[$lang], "link" => "bill.html?v=1.4.16"); };
if ($_SESSION['right_products']) { $mainMenu[] = array("name" => $prodtxt[$lang], "link" => "products.html?v=1.4.16"); };
if ($_SESSION['right_reservation']) { $mainMenu[] = array("name" => $restxt[$lang], "link" => "reservation.html?v=1.4.16"); };
if ($_SESSION['right_rating']) { $mainMenu[] = array("name" => $ratingtxt[$lang], "link" => "rating.html?v=1.4.16"); };
if ($_SESSION['right_customers']) { $mainMenu[] = array("name" => $customerstxt[$lang], "link" => "customers.html?v=1.4.16"); };
if ($_SESSION['right_dash']) { $mainMenu[] = array("name" => $dashtxt[$lang], "link" => "dash.php?v=1.4.16"); };
if ($_SESSION['right_manager'] || $_SESSION['is_admin'] || $_SESSION['right_closing']) { $mainMenu[] = array("name" => $admintxt[$lang], "link" => "manager.html?v=1.4.16"); };
$mainMenu[] = array("name" => $settingtxt[$lang], "link" => "preferences.html?v=1.4.16");
$mainMenu[] = array("name" => "Hilfe", "link" => "help.php?v=1.4.16");
$mainMenu[] = array("name" => "Feedback", "link" => "feedback.html?v=1.4.16");
if ($_SESSION['right_statistics']) { $mainMenu[] = array("name" => $stattxt[$lang], "link" => "reports.html?v=1.4.17"); };
if ($_SESSION['right_bill']) { $mainMenu[] = array("name" => $bontxt[$lang], "link" => "bill.html?v=1.4.17"); };
if ($_SESSION['right_products']) { $mainMenu[] = array("name" => $prodtxt[$lang], "link" => "products.html?v=1.4.17"); };
if ($_SESSION['right_reservation']) { $mainMenu[] = array("name" => $restxt[$lang], "link" => "reservation.html?v=1.4.17"); };
if ($_SESSION['right_rating']) { $mainMenu[] = array("name" => $ratingtxt[$lang], "link" => "rating.html?v=1.4.17"); };
if ($_SESSION['right_customers']) { $mainMenu[] = array("name" => $customerstxt[$lang], "link" => "customers.html?v=1.4.17"); };
if ($_SESSION['right_dash']) { $mainMenu[] = array("name" => $dashtxt[$lang], "link" => "dash.php?v=1.4.17"); };
if ($_SESSION['right_manager'] || $_SESSION['is_admin'] || $_SESSION['right_closing']) { $mainMenu[] = array("name" => $admintxt[$lang], "link" => "manager.html?v=1.4.17"); };
$mainMenu[] = array("name" => $settingtxt[$lang], "link" => "preferences.html?v=1.4.17");
$mainMenu[] = array("name" => "Hilfe", "link" => "help.php?v=1.4.17");
$mainMenu[] = array("name" => "Feedback", "link" => "feedback.html?v=1.4.17");
}
$mainMenu[] = array("name" => $logout[$lang], "link" => "logout.php");
@ -2017,6 +2019,8 @@ class Admin {
"restaurantmode" => array("dbcol" => "restaurantmode","checknum" => 0),
"dblog" => array("dbcol" => "dblog","checknum" => 0),
"printextras" => array("dbcol" => "printextras","checknum" => 0),
"forceprint" => array("dbcol" => "forceprint","checknum" => 0),
"priceinlist" => array("dbcol" => "priceinlist","checknum" => 0),
"smtphost" => array("dbcol" => "smtphost","checknum" => 0),
"smtpauth" => array("dbcol" => "smtpauth","checknum" => 1),

View File

@ -207,15 +207,15 @@ class Bill {
$tableid = $row->tableid;
if ($qrow->countid == 0) {
if ($tableid == 0) {
$sql = "SELECT DISTINCT billdate,brutto,ROUND(netto,2) as netto,'-' as tablename,username,host,IFNULL(%bill%.status,'') as status,guestinfo,paymentid FROM %bill%,%user% WHERE %bill%.id=? AND userid=%user%.id AND tableid='0' ";
$sql = "SELECT DISTINCT billdate,brutto,ROUND(netto,2) as netto,'-' as tablename,username,host,IFNULL(%bill%.status,'') as status,guestinfo,paymentid,printextras FROM %bill%,%user% WHERE %bill%.id=? AND userid=%user%.id AND tableid='0' ";
} else {
$sql = "SELECT DISTINCT billdate,brutto,ROUND(netto,2) as netto,tableno as tablename,username,host,IFNULL(%bill%.status,'') as status,guestinfo,paymentid FROM %bill%,%user%,%resttables% WHERE %bill%.id=? AND userid=%user%.id AND tableid=%resttables%.id ";
$sql = "SELECT DISTINCT billdate,brutto,ROUND(netto,2) as netto,tableno as tablename,username,host,IFNULL(%bill%.status,'') as status,guestinfo,paymentid,printextras FROM %bill%,%user%,%resttables% WHERE %bill%.id=? AND userid=%user%.id AND tableid=%resttables%.id ";
}
} else {
if ($tableid == 0) {
$sql = "SELECT DISTINCT billdate,brutto,ROUND(netto,2) as netto,'-' as tablename,username,host,IFNULL(%bill%.status,'') as status,guestinfo,paymentid FROM %bill%,%user%,%queue% WHERE %bill%.id=? AND %bill%.id=%queue%.billid AND userid=%user%.id AND tableid='0' AND paidtime is not null ";
$sql = "SELECT DISTINCT billdate,brutto,ROUND(netto,2) as netto,'-' as tablename,username,host,IFNULL(%bill%.status,'') as status,guestinfo,paymentid,printextras FROM %bill%,%user%,%queue% WHERE %bill%.id=? AND %bill%.id=%queue%.billid AND userid=%user%.id AND tableid='0' AND paidtime is not null ";
} else {
$sql = "SELECT DISTINCT billdate,brutto,ROUND(netto,2) as netto,tableno as tablename,username,host,IFNULL(%bill%.status,'') as status,guestinfo,paymentid FROM %bill%,%user%,%resttables%,%queue% WHERE %bill%.id=? AND %bill%.id=%queue%.billid AND userid=%user%.id AND tableid=%resttables%.id AND paidtime is not null ";
$sql = "SELECT DISTINCT billdate,brutto,ROUND(netto,2) as netto,tableno as tablename,username,host,IFNULL(%bill%.status,'') as status,guestinfo,paymentid,printextras FROM %bill%,%user%,%resttables%,%queue% WHERE %bill%.id=? AND %bill%.id=%queue%.billid AND userid=%user%.id AND tableid=%resttables%.id AND paidtime is not null ";
}
}
$stmt = $pdo->prepare(DbUtils::substTableAlias($sql));
@ -230,7 +230,7 @@ class Bill {
$stmt = $pdo->prepare(DbUtils::substTableAlias($sql));
$stmt->execute(array($tableid));
$trow = $stmt->fetchObject();
if (is_null($trow->abbreviation)) {
if (is_null($trow->abbreviation) || ($trow->abbreviation == '')) {
$tablename = $row->tablename;
} else {
$tablename = $trow->abbreviation . "-" . $row->tablename;
@ -249,6 +249,11 @@ class Bill {
$host = $row->host;
}
$thetimedate = $row->billdate;
$printextrasOfReceipt = $row->printextras;
$printExtras = false;
if ($printextrasOfReceipt == 1) {
$printExtras = true;
}
$thetimedate_arr = explode ( ' ', $thetimedate );
$thedate = $thetimedate_arr[0];
$datearr = explode ( '-', $thedate );
@ -313,10 +318,46 @@ class Bill {
}
$sql = "select productname,price,%pricelevel%.name as pricelevelname,togo,count(%queue%.productname) as count,%prodtype%.kind as kind from %queue%,%pricelevel%,%billproducts%,%prodtype%,%products% where %billproducts%.billid=? AND %billproducts%.queueid=%queue%.id AND %queue%.pricelevel = %pricelevel%.id AND %queue%.productid = %products%.id AND %products%.category = %prodtype%.id group by kind, productname,price,pricelevelname,togo";
$stmt = $pdo->prepare($this->dbutils->resolveTablenamesInSqlString($sql));
$stmt->execute(array($billid));
$result = $stmt->fetchAll();
if ($printExtras) {
$sql = "SELECT
productname,
price,
PL.name as pricelevelname,
togo,
count(Q.productname) as count,
PT.kind as kind,
(
SELECT GROUP_CONCAT(extraid ORDER BY extraid)
FROM
%queueextras% QE
WHERE
Q.id=QE.queueid
) as concatstr
FROM
%queue% Q,
%pricelevel% PL,
%billproducts% BP,
%prodtype% PT,
%products% P
WHERE
BP.billid=? AND
BP.queueid=Q.id AND
Q.pricelevel = PL.id AND
Q.productid = P.id AND
P.category = PT.id
GROUP BY
kind,
productname,
price,
pricelevelname,
togo,
concatstr
";
};
$result = CommonUtils::fetchSqlAll($pdo, $sql, array($billid));
$prodarray = array();
foreach($result as $zeile) {
$productname = $zeile['productname'];
@ -328,8 +369,22 @@ class Bill {
"pricelevel" => $zeile['pricelevelname'],
"price" => $sign . $zeile['price']
);
if ($printExtras) {
$extrasConcatStr = $zeile['concatstr'];
if (!is_null($extrasConcatStr)) {
$sql = "SELECT name FROM %extras% WHERE id IN ($extrasConcatStr)";
$allExtras = CommonUtils::fetchSqlAll($pdo, $sql, null);
foreach($allExtras as $anExtra) {
$prodarray[] = array("count" => 0,
"productname" => ' + ' . $anExtra['name'],
"pricelevel" => $zeile['pricelevelname'],
"price" => 0
);
}
}
}
}
$sql = "select tax,concat('$sign',round(sum(price) - sum(price / (1.0 + tax/100.0)),2)) as mwst, concat('$sign',round(sum(price / (1.0 + tax/100.0)),2)) as netto, concat('$sign',sum(price)) as brutto FROM %queue%,%billproducts% WHERE %billproducts%.billid=? AND %billproducts%.queueid=%queue%.id group by tax ORDER BY tax";
$stmt = $pdo->prepare(DbUtils::substTableAlias($sql));
@ -468,13 +523,12 @@ class Bill {
function getLastBillsWithContent($day,$month,$year) {
date_default_timezone_set(DbUtils::getTimeZone());
$currentTime = date('Y-m-d H:i:s');
$startDate = "$year-$month-$day 00:00:00";
$endDate = "$year-$month-$day 23:59:59";
$whenClause = " (billdate >= ? AND billdate <= ?)";
$pdo = $this->dbutils->openDbAndReturnPdo();
$pdo = DbUtils::openDbAndReturnPdoStatic();
$admin = new Admin();
$genValues = $admin->getGeneralConfigItems(false, $pdo);
$l = $genValues['billlanguage'];
@ -507,7 +561,7 @@ class Bill {
"shortdate" => $shortdate,
"brutto" => $zeile['brutto'],
"tablename" => $commonUtils->getTableNameFromId($pdo,$zeile['tableid']),
"billcontent" => $this->getBillWithId($pdo,$theId,$l,0,true),
"billcontent" => $this->getBillWithId($pdo,$theId,$l,0,true,false),
"isClosed" => $isClosed,
"host" => $zeile['host']
);

View File

@ -231,11 +231,6 @@ $sql = "UPDATE %closing% SET billcount=?, billsum=?,signature=? WHERE id=?";
$stmt = $pdo->prepare($this->dbutils->resolveTablenamesInSqlString($sql));
$stmt->execute(array($billsToTake,$pricesum,$signature,$newClosingId));
// now clean the extras that are assigned to queue - we do not need them anymore
$sql = "DELETE FROM %queueextras%";
$stmt = $pdo->prepare($this->dbutils->resolveTablenamesInSqlString($sql));
$stmt->execute();
$sql = "DELETE FROM %queue% WHERE id not in (select distinct queueid FROM %billproducts%) AND billid is null";
$stmt = $pdo->prepare($this->dbutils->resolveTablenamesInSqlString($sql));
$stmt->execute();
@ -385,7 +380,8 @@ $cashSum = $this->getSumOfBillsWithClosingId($pdo,$theId, true);
$userSums = $this->getUserGroupedSumOfClosing($pdo, $theId);
$taxessums = $this->getTaxesGroupedOfClosing($pdo,$theId);
$cashops = $this->getCashOpsOfClosing($pdo,$theId);
$closingEntry = array("id" => $theId, "closingDate" => $closingDate, "remark" => $remark, "totalsum" => $totalSum, "cashsum" => $cashSum, "usersums" => $userSums, "taxessums" => $taxessums,"cashops" => $cashops);
$daynameno = date('N', strtotime($closingDate));
$closingEntry = array("id" => $theId, "closingDate" => $closingDate, "daynameno" => $daynameno, "remark" => $remark, "totalsum" => $totalSum, "cashsum" => $cashSum, "usersums" => $userSums, "taxessums" => $taxessums,"cashops" => $cashops);
$resultarray[] = $closingEntry;
}

View File

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

View File

@ -821,14 +821,26 @@ class Products {
return;
}
$sql = "UPDATE %extras% SET name=?, price=? WHERE id=? AND removed is null";
$stmt = $pdo->prepare($this->dbutils->resolveTablenamesInSqlString($sql));
$stmt->execute(array($name,$price,$id));
$numberOfExtras = $stmt->rowCount();
if ($numberOfExtras != 1) {
$sql = "SELECT name,price,sorting FROM %extras% WHERE id=?";
$result = CommonUtils::fetchSqlAll($pdo, $sql, array($id));
$oldname = $result[0]['name'];
$oldprice = $result[0]['price'];
if (($oldname == $name) && ($oldprice == $price)) {
echo json_encode(array("status" => "ERROR", "code" => DB_NOT_CHANGED, "msg" => DB_NOT_CHANGED_MSG, "id" => $id));
$pdo->rollBack();
return;
} else {
$oldsorting = $result[0]['sorting'];
$sql = "INSERT INTO %extras% (name,price,sorting,removed) VALUES(?,?,?,?)";
CommonUtils::execSql($pdo, $sql, array($name,$price,$oldsorting,null));
$newExtraId = $pdo->lastInsertId();
$sql = "UPDATE %extras% SET removed = ? WHERE id=?";
CommonUtils::execSql($pdo, $sql, array(1,$id));
$sql = "UPDATE %extrasprods% SET extraid=? WHERE extraid=?";
CommonUtils::execSql($pdo, $sql, array($newExtraId,$id));
}
$pdo->commit();

View File

@ -1836,6 +1836,8 @@ class QueueContent {
$guestinfo = substr($guestinfo, 0, 30);
}
$printextras = CommonUtils::getConfigValue($pdo, 'printextras', 0);
$userid = $this->getUserId();
$ids = trim($ids, ",");
@ -1926,9 +1928,9 @@ class QueueContent {
$signature = $this->commonUtils->calcSignatureForBill($pdo,$currentTime, $brutto, $netto, '0.00', $userid);
$billInsertSql = "INSERT INTO `%bill%` (`id` , `billdate`,`brutto`,`netto`,`prevbrutto`,`prevnetto`,`tableid`,`paymentid`,`userid`,`ref`,`tax`,`host`,`reservationid`,`guestinfo`,`intguestid`,`signature`) VALUES (?,?,?,?,?,?,?,?,?,NULL,NULL,?,?,?,?,?)";
$billInsertSql = "INSERT INTO `%bill%` (`id` , `billdate`,`brutto`,`netto`,`prevbrutto`,`prevnetto`,`tableid`,`paymentid`,`userid`,`ref`,`tax`,`host`,`reservationid`,`guestinfo`,`intguestid`,`printextras`,`signature`) VALUES (?,?,?,?,?,?,?,?,?,NULL,NULL,?,?,?,?,?,?)";
$stmt = $pdo->prepare($this->dbutils->resolveTablenamesInSqlString($billInsertSql));
$stmt->execute(array($billid,$currentTime,$brutto,$netto,$newprevbrutto,$newprevnetto,$tableid,$paymentId,$userid,$host,$reservationid,$guestinfo,$intguestid,$signature));
$stmt->execute(array($billid,$currentTime,$brutto,$netto,$newprevbrutto,$newprevnetto,$tableid,$paymentId,$userid,$host,$reservationid,$guestinfo,$intguestid,$printextras,$signature));
for ($i=0;$i<count($ids_array);$i++) {
$queueid = $ids_array[$i];

View File

@ -831,6 +831,24 @@ class Version {
public static function upd_1415_1416($pdo, $prefix, $dbname) {
return array(true);
}
public static function upd_1416_1417($pdo, $prefix, $dbname) {
try {
self::insertOrUpdateConfigItem($pdo, 'forceprint', '0');
self::insertOrUpdateConfigItem($pdo, 'printextras', '0');
$sql = "ALTER TABLE %queueextras% ADD INDEX tqueueextras (queueid)";
$stmt = $pdo->prepare(DbUtils::substTableAlias($sql));
$stmt->execute();
$sql = "ALTER TABLE %bill% ADD printextras INT(1) NULL AFTER intguestpaid";
$stmt = $pdo->prepare(DbUtils::substTableAlias($sql));
$stmt->execute();
return array(true);
} catch (PDOException $e) {
return array(false,$e);
}
}
public static $updateOrder = array(
"1.3.0" => array("upd_1300_1301","1.3.1"),
@ -876,7 +894,8 @@ class Version {
"1.4.12" => array("upd_1412_1413","1.4.13"),
"1.4.13" => array("upd_1413_1414","1.4.14"),
"1.4.14" => array("upd_1414_1415","1.4.15"),
"1.4.15" => array("upd_1415_1416","1.4.16")
"1.4.15" => array("upd_1415_1416","1.4.16"),
"1.4.16" => array("upd_1416_1417","1.4.17")
);
// RE;* also for install process no check is required

View File

@ -5,7 +5,7 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.16">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.17">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />

View File

@ -7,7 +7,7 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.16">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.17">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />

View File

@ -7,7 +7,7 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.16">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.17">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />

View File

@ -7,7 +7,7 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.16">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.17">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />

View File

@ -5,7 +5,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.16">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.17">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />

View File

@ -5,7 +5,7 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.16">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.17">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />

View File

@ -4,8 +4,8 @@
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="author" content="Stefan Pichel">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.16">
<link rel="stylesheet" type="text/css" href="css/numfield.css?v=1.4.16">
<link rel="stylesheet" type="text/css" href="css/bestformat.css?v=1.4.17">
<link rel="stylesheet" type="text/css" href="css/numfield.css?v=1.4.17">
<link rel="stylesheet" href="php/contenthandler.php?module=admin&command=getmobilecss" />
<link rel="stylesheet" href="php/3rdparty/orderstyle/jquery.mobile.icons.min.css" />

File diff suppressed because one or more lines are too long