This commit is contained in:
dredgy committed 2021-11-12 20:52:11 +10:00
1 parent e2c3a2e6ed
commit 29ca45a0b1
21 files changed
+119 -927

No files matched your search

+3 -2
View File
@@ -2,6 +2,7 @@ namespace WebApplication
open DredgePos open DredgePos
open Microsoft.AspNetCore.Server.Kestrel.Core
open Reservations open Reservations
open Saturn open Saturn
open Giraffe open Giraffe
@@ -47,7 +48,7 @@ module Program =
let pageRouter = router { let pageRouter = router {
pipe_through browser pipe_through browser
not_found_handler (setStatusCode 404 >=> text "404") not_found_handler (setStatusCode 404 >=> text "404")
get "/" (redirectTo false "/login") get "/" (redirectTo true "/login")
get "/login" (warbler (fun _ -> PageController.loadHomePage() )) get "/login" (warbler (fun _ -> PageController.loadHomePage() ))
get "/floorplan" (warbler (fun ctx -> PageController.loadFloorplan (snd ctx))) get "/floorplan" (warbler (fun ctx -> PageController.loadFloorplan (snd ctx)))
forward "/ajax" ajaxRouter forward "/ajax" ajaxRouter
@@ -56,7 +57,7 @@ module Program =
let app = application { let app = application {
use_static "wwwroot" use_static "wwwroot"
use_router pageRouter use_router pageRouter
url "http://0.0.0.0:5001"
} }
run app run app
-847
View File
@@ -1,847 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<table openedby="1" number="1">
<order clerk="Josh">
<item type="item" split="0">
<id>CRAFTBEER010</id>
<quantity>1</quantity>
<name>Colonial Harzy</name>
<unitprice>10.00</unitprice>
<totalprice>10.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>10.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>CRAFTBEER009</id>
<quantity>1</quantity>
<name>Hemingway XPA</name>
<unitprice>8.00</unitprice>
<totalprice>8.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>8.00</originaltotalprice>
</item>
</order>
<order clerk="Josh">
<item type="item" split="0">
<id>STARTER001</id>
<quantity>1</quantity>
<name>Bruschetta</name>
<unitprice>12.00</unitprice>
<totalprice>12.00</totalprice>
<printgroup>Starters</printgroup>
<cover>0</cover>
<category>Starters</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>12.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>STARTER002</id>
<quantity>1</quantity>
<name>Pita &amp; Dips</name>
<unitprice>8.00</unitprice>
<totalprice>8.00</totalprice>
<printgroup>Starters</printgroup>
<cover>0</cover>
<category>Starters</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>8.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>STARTER003</id>
<quantity>1</quantity>
<name>Scallops</name>
<unitprice>20.00</unitprice>
<totalprice>20.00</totalprice>
<printgroup>Starters</printgroup>
<cover>0</cover>
<category>Starters</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>20.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>CRAFTBEER003</id>
<quantity>1</quantity>
<name>Galactopus</name>
<unitprice>18.00</unitprice>
<totalprice>18.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>18.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>CRAFTBEER009</id>
<quantity>1</quantity>
<name>Hemingway XPA</name>
<unitprice>8.00</unitprice>
<totalprice>8.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>8.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN001</id>
<quantity>1</quantity>
<name>Burger</name>
<unitprice>15.00</unitprice>
<totalprice>15.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>15.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN005</id>
<quantity>1</quantity>
<name>Laotian Green Curry</name>
<unitprice>30.00</unitprice>
<totalprice>30.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>30.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN003</id>
<quantity>1</quantity>
<name>Whole Sweetlip</name>
<unitprice>55.00</unitprice>
<totalprice>55.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>55.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN004</id>
<quantity>1</quantity>
<name>Venison Wellington</name>
<unitprice>35.00</unitprice>
<totalprice>35.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>35.00</originaltotalprice>
<instruction split="0">
<id>STEAKTEMP5</id>
<name>Medium Well</name>
<unitprice>0.00</unitprice>
<originalqty>1</originalqty>
<originaltotalprice>0.00</originaltotalprice>
</instruction>
</item>
</order>
<order clerk="Josh">
<item type="item" split="0">
<id>CRAFTBEER012</id>
<quantity>1</quantity>
<name>Corona</name>
<unitprice>7.00</unitprice>
<totalprice>7.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>7.00</originaltotalprice>
<instruction split="0">
<id>INSTRUCTION005</id>
<name>With Lime</name>
<unitprice>0.50</unitprice>
<originalqty>1</originalqty>
<originaltotalprice>0.50</originaltotalprice>
</instruction>
</item>
</order>
<order clerk="Josh">
<item type="item" split="0">
<id>MAIN003</id>
<quantity>1</quantity>
<name>Whole Sweetlip</name>
<unitprice>55.00</unitprice>
<totalprice>55.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>55.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN004</id>
<quantity>1</quantity>
<name>Venison Wellington</name>
<unitprice>35.00</unitprice>
<totalprice>35.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>35.00</originaltotalprice>
<instruction split="0">
<id>STEAKTEMP2</id>
<name>Rare</name>
<unitprice>0.00</unitprice>
<originalqty>1</originalqty>
<originaltotalprice>0.00</originaltotalprice>
</instruction>
</item>
</order>
<order clerk="Josh">
<item type="item" split="0">
<id>CRAFTBEER010</id>
<quantity>1</quantity>
<name>Colonial Hazy</name>
<unitprice>10.00</unitprice>
<totalprice>10.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>10.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>CRAFTBEER009</id>
<quantity>1</quantity>
<name>Hemingway XPA</name>
<unitprice>8.00</unitprice>
<totalprice>8.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>8.00</originaltotalprice>
</item>
</order>
<order clerk="Josh">
<item type="item" split="0">
<id>STARTER001</id>
<quantity>1</quantity>
<name>Bruschetta</name>
<unitprice>12.00</unitprice>
<totalprice>12.00</totalprice>
<printgroup>Starters</printgroup>
<cover>0</cover>
<category>Starters</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>12.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>STARTER002</id>
<quantity>1</quantity>
<name>Pita &amp; Dips</name>
<unitprice>8.00</unitprice>
<totalprice>8.00</totalprice>
<printgroup>Starters</printgroup>
<cover>0</cover>
<category>Starters</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>8.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>STARTER003</id>
<quantity>1</quantity>
<name>Scallops</name>
<unitprice>20.00</unitprice>
<totalprice>20.00</totalprice>
<printgroup>Starters</printgroup>
<cover>0</cover>
<category>Starters</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>20.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>CRAFTBEER003</id>
<quantity>1</quantity>
<name>Galactopus</name>
<unitprice>18.00</unitprice>
<totalprice>18.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>18.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>CRAFTBEER009</id>
<quantity>1</quantity>
<name>Hemingway XPA</name>
<unitprice>8.00</unitprice>
<totalprice>8.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>8.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN001</id>
<quantity>1</quantity>
<name>Burger</name>
<unitprice>15.00</unitprice>
<totalprice>15.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>15.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN005</id>
<quantity>1</quantity>
<name>Laotian Green Curry</name>
<unitprice>30.00</unitprice>
<totalprice>30.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>30.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN003</id>
<quantity>1</quantity>
<name>Whole Sweetlip</name>
<unitprice>55.00</unitprice>
<totalprice>55.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>55.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN004</id>
<quantity>1</quantity>
<name>Venison Wellington</name>
<unitprice>35.00</unitprice>
<totalprice>35.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>35.00</originaltotalprice>
<instruction split="0">
<id>STEAKTEMP5</id>
<name>Medium Well</name>
<unitprice>0.00</unitprice>
<originalqty>1</originalqty>
<originaltotalprice>0.00</originaltotalprice>
</instruction>
</item>
</order>
<order clerk="Josh">
<item type="item" split="0">
<id>CRAFTBEER012</id>
<quantity>1</quantity>
<name>Corona</name>
<unitprice>7.00</unitprice>
<totalprice>7.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>7.00</originaltotalprice>
<instruction split="0">
<id>INSTRUCTION005</id>
<name>With Lime</name>
<unitprice>0.50</unitprice>
<originalqty>1</originalqty>
<originaltotalprice>0.50</originaltotalprice>
</instruction>
</item>
</order>
<order clerk="Josh">
<item type="item" split="0">
<id>MAIN003</id>
<quantity>1</quantity>
<name>Whole Sweetlip</name>
<unitprice>55.00</unitprice>
<totalprice>55.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>55.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN004</id>
<quantity>1</quantity>
<name>Venison Wellington</name>
<unitprice>35.00</unitprice>
<totalprice>35.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>35.00</originaltotalprice>
<instruction split="0">
<id>STEAKTEMP2</id>
<name>Rare</name>
<unitprice>0.00</unitprice>
<originalqty>1</originalqty>
<originaltotalprice>0.00</originaltotalprice>
</instruction>
</item>
</order>
<order clerk="Josh">
<item type="item" split="0">
<id>CRAFTBEER010</id>
<quantity>1</quantity>
<name>Colonial Harzy</name>
<unitprice>10.00</unitprice>
<totalprice>10.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>10.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>CRAFTBEER009</id>
<quantity>1</quantity>
<name>Hemingway XPA</name>
<unitprice>8.00</unitprice>
<totalprice>8.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>8.00</originaltotalprice>
</item>
</order>
<order clerk="Josh">
<item type="item" split="0">
<id>STARTER001</id>
<quantity>1</quantity>
<name>Bruschetta</name>
<unitprice>12.00</unitprice>
<totalprice>12.00</totalprice>
<printgroup>Starters</printgroup>
<cover>0</cover>
<category>Starters</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>12.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>STARTER002</id>
<quantity>1</quantity>
<name>Pita &amp; Dips</name>
<unitprice>8.00</unitprice>
<totalprice>8.00</totalprice>
<printgroup>Starters</printgroup>
<cover>0</cover>
<category>Starters</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>8.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>STARTER003</id>
<quantity>1</quantity>
<name>Scallops</name>
<unitprice>20.00</unitprice>
<totalprice>20.00</totalprice>
<printgroup>Starters</printgroup>
<cover>0</cover>
<category>Starters</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>20.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>CRAFTBEER003</id>
<quantity>1</quantity>
<name>Galactopus</name>
<unitprice>18.00</unitprice>
<totalprice>18.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>18.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>CRAFTBEER009</id>
<quantity>1</quantity>
<name>Hemingway XPA</name>
<unitprice>8.00</unitprice>
<totalprice>8.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>8.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN001</id>
<quantity>1</quantity>
<name>Burger</name>
<unitprice>15.00</unitprice>
<totalprice>15.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>15.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN005</id>
<quantity>1</quantity>
<name>Laotian Green Curry</name>
<unitprice>30.00</unitprice>
<totalprice>30.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>30.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN003</id>
<quantity>1</quantity>
<name>Whole Sweetlip</name>
<unitprice>55.00</unitprice>
<totalprice>55.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>55.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN004</id>
<quantity>1</quantity>
<name>Venison Wellington</name>
<unitprice>35.00</unitprice>
<totalprice>35.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>35.00</originaltotalprice>
<instruction split="0">
<id>STEAKTEMP5</id>
<name>Medium Well</name>
<unitprice>0.00</unitprice>
<originalqty>1</originalqty>
<originaltotalprice>0.00</originaltotalprice>
</instruction>
</item>
</order>
<order clerk="Josh">
<item type="item" split="0">
<id>CRAFTBEER012</id>
<quantity>1</quantity>
<name>Corona</name>
<unitprice>7.00</unitprice>
<totalprice>7.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>7.00</originaltotalprice>
<instruction split="0">
<id>INSTRUCTION005</id>
<name>With Lime</name>
<unitprice>0.50</unitprice>
<originalqty>1</originalqty>
<originaltotalprice>0.50</originaltotalprice>
</instruction>
</item>
</order>
<order clerk="Josh">
<item type="item" split="0">
<id>MAIN003</id>
<quantity>1</quantity>
<name>Whole Sweetlip</name>
<unitprice>55.00</unitprice>
<totalprice>55.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>55.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN004</id>
<quantity>1</quantity>
<name>Venison Wellington</name>
<unitprice>35.00</unitprice>
<totalprice>35.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>35.00</originaltotalprice>
<instruction split="0">
<id>STEAKTEMP2</id>
<name>Rare</name>
<unitprice>0.00</unitprice>
<originalqty>1</originalqty>
<originaltotalprice>0.00</originaltotalprice>
</instruction>
</item>
</order>
<order clerk="Josh">
<item type="item" split="0">
<id>CRAFTBEER010</id>
<quantity>1</quantity>
<name>Colonial Harzy</name>
<unitprice>10.00</unitprice>
<totalprice>10.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>10.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>CRAFTBEER009</id>
<quantity>1</quantity>
<name>Hemingway XPA</name>
<unitprice>8.00</unitprice>
<totalprice>8.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>8.00</originaltotalprice>
</item>
</order>
<order clerk="Josh">
<item type="item" split="0">
<id>STARTER001</id>
<quantity>1</quantity>
<name>Bruschetta</name>
<unitprice>12.00</unitprice>
<totalprice>12.00</totalprice>
<printgroup>Starters</printgroup>
<cover>0</cover>
<category>Starters</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>12.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>STARTER002</id>
<quantity>1</quantity>
<name>Pita &amp; Dips</name>
<unitprice>8.00</unitprice>
<totalprice>8.00</totalprice>
<printgroup>Starters</printgroup>
<cover>0</cover>
<category>Starters</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>8.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>STARTER003</id>
<quantity>1</quantity>
<name>Scallops</name>
<unitprice>20.00</unitprice>
<totalprice>20.00</totalprice>
<printgroup>Starters</printgroup>
<cover>0</cover>
<category>Starters</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>20.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>CRAFTBEER003</id>
<quantity>1</quantity>
<name>Galactopus</name>
<unitprice>18.00</unitprice>
<totalprice>18.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>18.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>CRAFTBEER009</id>
<quantity>1</quantity>
<name>Hemingway XPA</name>
<unitprice>8.00</unitprice>
<totalprice>8.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>8.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN001</id>
<quantity>1</quantity>
<name>Burger</name>
<unitprice>15.00</unitprice>
<totalprice>15.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>15.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN005</id>
<quantity>1</quantity>
<name>Laotian Green Curry</name>
<unitprice>30.00</unitprice>
<totalprice>30.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>30.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN003</id>
<quantity>1</quantity>
<name>Whole Sweetlip</name>
<unitprice>55.00</unitprice>
<totalprice>55.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>55.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN004</id>
<quantity>1</quantity>
<name>Venison Wellington</name>
<unitprice>35.00</unitprice>
<totalprice>35.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>35.00</originaltotalprice>
<instruction split="0">
<id>STEAKTEMP5</id>
<name>Medium Well</name>
<unitprice>0.00</unitprice>
<originalqty>1</originalqty>
<originaltotalprice>0.00</originaltotalprice>
</instruction>
</item>
</order>
<order clerk="Josh">
<item type="item" split="0">
<id>CRAFTBEER012</id>
<quantity>1</quantity>
<name>Corona</name>
<unitprice>7.00</unitprice>
<totalprice>7.00</totalprice>
<printgroup>Drinks</printgroup>
<cover>0</cover>
<category>Beer</category>
<department>Drinks</department>
<originalqty>1</originalqty>
<originaltotalprice>7.00</originaltotalprice>
<instruction split="0">
<id>INSTRUCTION005</id>
<name>With Lime</name>
<unitprice>0.50</unitprice>
<originalqty>1</originalqty>
<originaltotalprice>0.50</originaltotalprice>
</instruction>
</item>
</order>
<order clerk="Josh">
<item type="item" split="0">
<id>MAIN003</id>
<quantity>1</quantity>
<name>Whole Sweetlip</name>
<unitprice>55.00</unitprice>
<totalprice>55.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>55.00</originaltotalprice>
</item>
<item type="item" split="0">
<id>MAIN004</id>
<quantity>1</quantity>
<name>Venison Wellington</name>
<unitprice>35.00</unitprice>
<totalprice>35.00</totalprice>
<printgroup>Mains</printgroup>
<cover>0</cover>
<category>Mains</category>
<department>Food</department>
<originalqty>1</originalqty>
<originaltotalprice>35.00</originaltotalprice>
<instruction split="0">
<id>STEAKTEMP2</id>
<name>Rare</name>
<unitprice>0.00</unitprice>
<originalqty>1</originalqty>
<originaltotalprice>0.00</originaltotalprice>
</instruction>
</item>
</order>
</table>
+7
View File
@@ -0,0 +1,7 @@
{
"short_name":"DredgePos",
"name":"F# Point of Sale System",
"start_url":"/",
"display":"fullscreen",
"scope":"/"
}
+3 -2
View File
@@ -1,8 +1,9 @@
let showLoginBox = () => showVirtualNumpad('Enter Login Code', 6, true, false, false, authenticate); let showLoginBox = () => showVirtualNumpad('Enter Login Code', 6, true, false, false, authenticate);
let authenticate = (input) => { let authenticate = (input) => {
let login = ajaxSync('/ajax/authenticateClerk', input); let login = ajaxSync('/ajax/authenticateClerk', input);
if (login === 'success') if (login === 'success') {
redirect('/floorplan'); location.assign('/floorplan');
}
else else
showLoginBox(); showLoginBox();
}; };
@@ -1 +1 @@
{"version":3,"file":"dredgepos.authenticate.js","sourceRoot":"","sources":["../ts/dredgepos.authenticate.ts"],"names":[],"mappings":"AAAA,IAAI,YAAY,GAAG,GAAG,EAAE,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;AAEnG,IAAK,YAAY,GAAG,CAAC,KAAc,EAAE,EAAE;IACnC,IAAI,KAAK,GAAG,QAAQ,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAA;IACtD,IAAG,KAAK,KAAK,SAAS;QAClB,QAAQ,CAAC,YAAY,CAAC,CAAA;;QAEtB,YAAY,EAAE,CAAA;AACtB,CAAC,CAAA;AAED,CAAC,CAAC,GAAG,EAAE;IACH,YAAY,EAAE,CAAA;AAClB,CAAC,CAAC,CAAA"} {"version":3,"file":"dredgepos.authenticate.js","sourceRoot":"","sources":["../ts/dredgepos.authenticate.ts"],"names":[],"mappings":"AAAA,IAAI,YAAY,GAAG,GAAG,EAAE,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;AAEnG,IAAK,YAAY,GAAG,CAAC,KAAc,EAAE,EAAE;IACnC,IAAI,KAAK,GAAG,QAAQ,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAA;IACtD,IAAG,KAAK,KAAK,SAAS,EAAC;QACnB,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;KAChC;;QAEG,YAAY,EAAE,CAAA;AACtB,CAAC,CAAA;AAED,CAAC,CAAC,GAAG,EAAE;IACH,YAAY,EAAE,CAAA;AAClB,CAAC,CAAC,CAAA"}
+6 -3
View File
@@ -56,13 +56,16 @@ let ajaxSync = (endpoint, data, method = 'POST') => {
return response; return response;
}; };
/* Redirect to a specific URL */ /* Redirect to a specific URL */
let redirect = (url) => { let redirect = (url) => location.assign(url);
window.location.href = url; const resize = () => {
$('#pageContainer').height(window.innerHeight + "px");
}; };
let setupCore = (languageVars) => { let setupCore = (languageVars) => {
Application.languageVars = languageVars; Application.languageVars = languageVars;
const doc = $(document); const doc = $(document);
doc.on('click', '#alertNo, #alertOk', hideAlerts); doc.on('click', '#alertNo, #alertOk', hideAlerts);
window.addEventListener('resize', resize);
resize();
setElementVisibilityByMode(); setElementVisibilityByMode();
}; };
// @ts-ignore // @ts-ignore
@@ -130,7 +133,7 @@ let setElementVisibilityByMode = () => {
invisibleElements.each((index, elem) => { invisibleElements.each((index, elem) => {
let element = $(elem); let element = $(elem);
let inVisibleInModes = element.data('invisible-in-mode'); let inVisibleInModes = element.data('invisible-in-mode');
let hideElement = inVisibleInModes.every(invisibleMode => { let hideElement = inVisibleInModes.some(invisibleMode => {
return mode.includes(invisibleMode); return mode.includes(invisibleMode);
}); });
element.toggle(!hideElement); element.toggle(!hideElement);
+1 -1
View File
@@ -1 +1 @@
{"version":3,"file":"dredgepos.core.js","sourceRoot":"","sources":["../ts/dredgepos.core.ts"],"names":[],"mappings":"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 truncated {"version":3,"file":"dredgepos.core.js","sourceRoot":"","sources":["../ts/dredgepos.core.ts"],"names":[],"mappings":"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 truncated
+22 -19
View File
@@ -149,16 +149,21 @@ const createTableShape = (table) => {
}; };
const setupTableEvents = (tableGroup) => { const setupTableEvents = (tableGroup) => {
const tableShape = getTableShapeFromGroup(tableGroup); const tableShape = getTableShapeFromGroup(tableGroup);
tableGroup.on('click', (e) => tableClicked(e.target)); tableGroup.on('click', tableClicked);
tableGroup.on('tap', (e) => tableClicked(e.target)); tableGroup.on('tap', tableClicked);
tableGroup.on('dragend', (e) => saveTableTransformation(e.target)); tableGroup.on('dragend', tableGroupTransformed);
tableShape.on('transformend', (e) => { tableShape.on('transformend', tableShapeTransformed);
const group = getTableGroupFromShape(e.target);
saveTableTransformation(group);
});
}; };
const getTableShapeFromGroup = (group) => group.getChildren()[0]; const getTableShapeFromGroup = (group) => group.getChildren()[0];
const getTableGroupFromShape = (shape) => shape.parent; const getTableGroupFromShape = (shape) => shape.parent;
const tableGroupTransformed = (e) => {
saveTableTransformation(e.target);
};
const tableShapeTransformed = (e) => {
let shape = e.target;
let group = getTableGroupFromShape(shape);
saveTableTransformation(group);
};
const saveTableTransformation = (tableGroup) => { const saveTableTransformation = (tableGroup) => {
const originalTable = getTableDataFromGroup(tableGroup); const originalTable = getTableDataFromGroup(tableGroup);
const tableShape = getTableShapeFromGroup(tableGroup); const tableShape = getTableShapeFromGroup(tableGroup);
@@ -321,7 +326,8 @@ const selectTable = (tableShape) => {
turnOnMode('tableSelected'); turnOnMode('tableSelected');
}; };
const updateCoverText = (table) => $('.selectedTableCovers').text(lang('covers', table.default_covers.toString())); const updateCoverText = (table) => $('.selectedTableCovers').text(lang('covers', table.default_covers.toString()));
const tableClicked = (tableShape) => { const tableClicked = (event) => {
let tableShape = getTableShapeFromGroup(event.currentTarget);
const table = getTableDataFromShape(tableShape); const table = getTableDataFromShape(tableShape);
if (isInMode('merge')) { if (isInMode('merge')) {
mergeTables(getTableDataFromTableNumber(Floorplan.selectedTableNumber), table); mergeTables(getTableDataFromTableNumber(Floorplan.selectedTableNumber), table);
@@ -365,17 +371,13 @@ const createDecorationShape = (decoration, select) => {
decorationShape.src = 'images/decorations/' + decoration.decoration_image; decorationShape.src = 'images/decorations/' + decoration.decoration_image;
}; };
const setupDecorationEvents = (decorationShape) => { const setupDecorationEvents = (decorationShape) => {
decorationShape.on('click', e => { decorationShape.on('click', decorationClicked);
decorationClicked(e.target); decorationShape.on('tap', decorationClicked);
}); decorationShape.on('transformend', decorationTransformed);
decorationShape.on('transformend', e => { decorationShape.on('dragend', decorationTransformed);
decorationTransformed(e.target);
});
decorationShape.on('dragend', e => {
decorationTransformed(e.target);
});
}; };
const decorationClicked = (decorationShape) => { const decorationClicked = (event) => {
let decorationShape = event.target;
if (isInMode('edit')) { if (isInMode('edit')) {
turnOffMode('tableSelected'); turnOffMode('tableSelected');
if ((Floorplan.transformer.nodes().length > 0 && Floorplan.transformer.nodes()[0] != decorationShape) || Floorplan.transformer.nodes().length == 0) { if ((Floorplan.transformer.nodes().length > 0 && Floorplan.transformer.nodes()[0] != decorationShape) || Floorplan.transformer.nodes().length == 0) {
@@ -398,7 +400,8 @@ const selectDecorationShape = (decorationShape) => {
const getDecorationDataById = (id) => { const getDecorationDataById = (id) => {
return Floorplan.decorations.find(decoration => id == decoration.id); return Floorplan.decorations.find(decoration => id == decoration.id);
}; };
const decorationTransformed = (decorationShape) => { const decorationTransformed = (event) => {
let decorationShape = event.currentTarget;
const oldDecorationData = getDecorationDataById(Number(decorationShape.id())); const oldDecorationData = getDecorationDataById(Number(decorationShape.id()));
const newDecoration = { const newDecoration = {
id: oldDecorationData.id, id: oldDecorationData.id,
@@ -1 +1 @@
{"version":3,"file":"dredgepos.floorplan.js","sourceRoot":"","sources":["../ts/dredgepos.floorplan.ts"],"names":[],"mappings":"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 truncated {"version":3,"file":"dredgepos.floorplan.js","sourceRoot":"","sources":["../ts/dredgepos.floorplan.ts"],"names":[],"mappings":"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 truncated
+8 -1
View File
@@ -100,6 +100,9 @@ let setupVirtualKeyboard = (keyboardLayouts) => {
$(document).on('click', '.virtualKeyboardButton', e => { $(document).on('click', '.virtualKeyboardButton', e => {
virtualKeyboardInput($(e.target).data('value')); virtualKeyboardInput($(e.target).data('value'));
}); });
$(document).on('click', '.forceFocus', (e) => {
$('#virtualKeyboardInput').trigger('focus');
});
setKeyboardLayout('default'); setKeyboardLayout('default');
}; };
let showVirtualKeyboard = (heading, maxlength = 32, isPassword = false, submitFunction = () => { hideVirtualKeyboard(); }) => { let showVirtualKeyboard = (heading, maxlength = 32, isPassword = false, submitFunction = () => { hideVirtualKeyboard(); }) => {
@@ -107,12 +110,16 @@ let showVirtualKeyboard = (heading, maxlength = 32, isPassword = false, submitFu
let inputBox = $('#virtualKeyboardInput'); let inputBox = $('#virtualKeyboardInput');
keyboard.css('display', 'flex'); keyboard.css('display', 'flex');
$('#virtualKeyboardHeading').html(heading); $('#virtualKeyboardHeading').html(heading);
$('.forceFocus').trigger('click');
keyboard.data('value', ''); keyboard.data('value', '');
inputBox.text(''); inputBox.val('');
keyboard.data('maxlength', maxlength); keyboard.data('maxlength', maxlength);
keyboard.data('password', isPassword); keyboard.data('password', isPassword);
keyboard.data('submitfunction', submitFunction); keyboard.data('submitfunction', submitFunction);
inputBox.attr('autofocus', 'autofocus');
inputBox.trigger('focus'); inputBox.trigger('focus');
inputBox.trigger('click');
inputBox.trigger('select');
$(document).on('keyup', e => { $(document).on('keyup', e => {
let key = e.key; let key = e.key;
if (key == 'Enter' && inputBox.val().toString().length > 0) { if (key == 'Enter' && inputBox.val().toString().length > 0) {
+1 -1
View File
@@ -1 +1 @@
{"version":3,"file":"keyboards.js","sourceRoot":"","sources":["../ts/keyboards.ts"],"names":[],"mappings":"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 truncated {"version":3,"file":"keyboards.js","sourceRoot":"","sources":["../ts/keyboards.ts"],"names":[],"mappings":"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 truncated
+3 -2
View File
@@ -2,8 +2,9 @@
let authenticate = (input : string) => { let authenticate = (input : string) => {
let login = ajaxSync('/ajax/authenticateClerk', input) let login = ajaxSync('/ajax/authenticateClerk', input)
if(login === 'success') if(login === 'success'){
redirect('/floorplan') location.assign('/floorplan')
}
else else
showLoginBox() showLoginBox()
} }
+9 -4
View File
@@ -67,15 +67,20 @@
} }
/* Redirect to a specific URL */ /* Redirect to a specific URL */
let redirect = (url: string) : void => { let redirect = (url: string) : void => location.assign(url)
window.location.href = url
}
const resize = () => {
$('#pageContainer').height(window.innerHeight + "px");
}
let setupCore = (languageVars: Record<string, string>) => { let setupCore = (languageVars: Record<string, string>) => {
Application.languageVars = languageVars Application.languageVars = languageVars
const doc = $(document) const doc = $(document)
doc.on('click', '#alertNo, #alertOk', hideAlerts) doc.on('click', '#alertNo, #alertOk', hideAlerts)
window.addEventListener('resize', resize)
resize()
setElementVisibilityByMode() setElementVisibilityByMode()
} }
@@ -159,7 +164,7 @@
invisibleElements.each((index, elem) => { invisibleElements.each((index, elem) => {
let element = $(elem) let element = $(elem)
let inVisibleInModes: PosModes = element.data('invisible-in-mode') let inVisibleInModes: PosModes = element.data('invisible-in-mode')
let hideElement = inVisibleInModes.every(invisibleMode => { let hideElement = inVisibleInModes.some(invisibleMode => {
return mode.includes(invisibleMode) return mode.includes(invisibleMode)
}) })
element.toggle(!hideElement) element.toggle(!hideElement)
+23 -22
View File
@@ -212,18 +212,24 @@ const createTableShape = (table: table) => {
const setupTableEvents = (tableGroup: Konva.Group) => { const setupTableEvents = (tableGroup: Konva.Group) => {
const tableShape = getTableShapeFromGroup(tableGroup) const tableShape = getTableShapeFromGroup(tableGroup)
tableGroup.on('click', (e) => tableClicked(e.target as Konva.Shape)) tableGroup.on('click', tableClicked)
tableGroup.on('tap', (e) => tableClicked(e.target as Konva.Shape)) tableGroup.on('tap', tableClicked)
tableGroup.on('dragend', (e) => saveTableTransformation(e.target as Konva.Group)) tableGroup.on('dragend', tableGroupTransformed)
tableShape.on('transformend', (e) => { tableShape.on('transformend', tableShapeTransformed)
const group = getTableGroupFromShape(e.target as Konva.Shape)
saveTableTransformation(group)
})
} }
const getTableShapeFromGroup = (group: Konva.Group) => group.getChildren()[0] as Konva.Shape const getTableShapeFromGroup = (group: Konva.Group) => group.getChildren()[0] as Konva.Shape
const getTableGroupFromShape = (shape: Konva.Shape) => shape.parent as Konva.Group const getTableGroupFromShape = (shape: Konva.Shape) => shape.parent as Konva.Group
const tableGroupTransformed = (e: Konva.KonvaEventObject<any>) => {
saveTableTransformation(e.target as Konva.Group)
}
const tableShapeTransformed = (e: Konva.KonvaEventObject<any>) => {
let shape = e.target as Konva.Shape
let group = getTableGroupFromShape(shape)
saveTableTransformation(group)
}
const saveTableTransformation = (tableGroup: Konva.Group) => { const saveTableTransformation = (tableGroup: Konva.Group) => {
const originalTable = getTableDataFromGroup(tableGroup) const originalTable = getTableDataFromGroup(tableGroup)
const tableShape = getTableShapeFromGroup(tableGroup) const tableShape = getTableShapeFromGroup(tableGroup)
@@ -425,7 +431,8 @@ const selectTable = (tableShape: Konva.Shape) => {
const updateCoverText = (table:table) => $('.selectedTableCovers').text(lang('covers', table.default_covers.toString())) const updateCoverText = (table:table) => $('.selectedTableCovers').text(lang('covers', table.default_covers.toString()))
const tableClicked = (tableShape: Konva.Shape) => { const tableClicked = (event: Konva.KonvaEventObject<any>) => {
let tableShape = getTableShapeFromGroup(event.currentTarget as Konva.Group)
const table = getTableDataFromShape(tableShape) const table = getTableDataFromShape(tableShape)
if(isInMode('merge')) { if(isInMode('merge')) {
@@ -481,20 +488,14 @@ const createDecorationShape = (decoration:decoration, select?: boolean) => {
} }
const setupDecorationEvents = (decorationShape: Konva.Image) => { const setupDecorationEvents = (decorationShape: Konva.Image) => {
decorationShape.on('click', e => { decorationShape.on('click', decorationClicked)
decorationClicked(e.target as Konva.Image) decorationShape.on('tap', decorationClicked)
}) decorationShape.on('transformend', decorationTransformed)
decorationShape.on('dragend', decorationTransformed)
decorationShape.on('transformend', e => {
decorationTransformed(e.target as Konva.Image)
})
decorationShape.on('dragend', e => {
decorationTransformed(e.target as Konva.Image)
})
} }
const decorationClicked = (decorationShape: Konva.Image) => { const decorationClicked = (event: Konva.KonvaEventObject<any>) => {
let decorationShape = event.target as Konva.Image
if(isInMode('edit')){ if(isInMode('edit')){
turnOffMode('tableSelected') turnOffMode('tableSelected')
if ((Floorplan.transformer.nodes().length > 0 && Floorplan.transformer.nodes()[0] != decorationShape) || Floorplan.transformer.nodes().length == 0) { if ((Floorplan.transformer.nodes().length > 0 && Floorplan.transformer.nodes()[0] != decorationShape) || Floorplan.transformer.nodes().length == 0) {
@@ -519,8 +520,8 @@ const getDecorationDataById = (id: number) => {
return Floorplan.decorations.find(decoration => id == decoration.id) return Floorplan.decorations.find(decoration => id == decoration.id)
} }
const decorationTransformed = (decorationShape: Konva.Image) => { const decorationTransformed = (event: Konva.KonvaEventObject<MouseEvent>|Konva.KonvaEventObject<TouchEvent|DragEvent|MouseEvent>) => {
let decorationShape = event.currentTarget as Konva.Image
const oldDecorationData = getDecorationDataById(Number(decorationShape.id())) const oldDecorationData = getDecorationDataById(Number(decorationShape.id()))
const newDecoration: decoration = { const newDecoration: decoration = {
id: oldDecorationData.id, id: oldDecorationData.id,
+8 -1
View File
@@ -126,6 +126,9 @@ let showVirtualNumpad = (heading: string, maxlength = 4, isPassword: boolean, al
virtualKeyboardInput($(e.target).data('value')); virtualKeyboardInput($(e.target).data('value'));
}) })
$(document).on('click', '.forceFocus', (e) => {
$('#virtualKeyboardInput').trigger('focus')
})
setKeyboardLayout('default') setKeyboardLayout('default')
} }
@@ -135,13 +138,17 @@ let showVirtualNumpad = (heading: string, maxlength = 4, isPassword: boolean, al
keyboard.css('display', 'flex') keyboard.css('display', 'flex')
$('#virtualKeyboardHeading').html(heading) $('#virtualKeyboardHeading').html(heading)
$('.forceFocus').trigger('click')
keyboard.data('value', '') keyboard.data('value', '')
inputBox.text('') inputBox.val('')
keyboard.data('maxlength', maxlength) keyboard.data('maxlength', maxlength)
keyboard.data('password', isPassword) keyboard.data('password', isPassword)
keyboard.data('submitfunction', submitFunction) keyboard.data('submitfunction', submitFunction)
inputBox.attr('autofocus', 'autofocus');
inputBox.trigger('focus') inputBox.trigger('focus')
inputBox.trigger('click')
inputBox.trigger('select')
$(document).on('keyup', e => { $(document).on('keyup', e => {
let key = e.key let key = e.key
if (key == 'Enter' && inputBox.val().toString().length > 0) { if (key == 'Enter' && inputBox.val().toString().length > 0) {
+2 -2
View File
@@ -56,7 +56,7 @@ body
color: var(--pos-header-text-color) color: var(--pos-header-text-color)
background: var(--pos-header-background) background: var(--pos-header-background)
.posButton.active,.posButton:active .posButton.active,.posButton:active, .posButton:focus
border-color: var(--posbutton-border-color-active) border-color: var(--posbutton-border-color-active)
color: var(--posbutton-text-color-active) color: var(--posbutton-text-color-active)
background: var(--posbutton-background-active) /* webkit */ background: var(--posbutton-background-active) /* webkit */
@@ -64,7 +64,7 @@ body
#pageContainer #pageContainer
@include flex @include flex
height: 100vh !important height: 100vh
.posButton, .posHeader .posButton, .posHeader
@include flex @include flex
+2 -2
View File
@@ -79,8 +79,8 @@
display: none display: none
border: solid 3px var(--global-border-color) border: solid 3px var(--global-border-color)
background-color: var(--global-bgcolor) background-color: var(--global-bgcolor)
width: 30vw width: 30%
height: 50vh height: 50%
> * > *
@include flex-column-item @include flex-column-item
+12 -12
View File
@@ -28,13 +28,13 @@
#virtualNumpad #virtualNumpad
@include absoluteCenter @include absoluteCenter
flex-direction: column flex-direction: column
height: 70vh height: 70%
width: 30vw width: 25%
border: solid 2px var(--global-border-color) border: solid 2px var(--global-border-color)
@include mobile @include mobile
height: 100vh height: 100%
width: 100vw width: 100%
#virtualNumpadInput #virtualNumpadInput
background-color: var(--global-secondary-bgcolor) background-color: var(--global-secondary-bgcolor)
@@ -63,14 +63,14 @@
#virtualKeyboard #virtualKeyboard
@include absoluteCenter @include absoluteCenter
flex-direction: column flex-direction: column
width: 80vw width: 80%
height: 40vh height: 40%
background-color: var(--global-bgcolor) background-color: var(--global-bgcolor)
border: solid 2px var(--global-border-color) border: solid 2px var(--global-border-color)
@include mobile @include mobile
width: 100vw width: 100%
height: 10vh height: 10%
top: 0 top: 0
bottom: auto bottom: auto
@@ -118,14 +118,14 @@
@include flex-column @include flex-column
@include absoluteCenter @include absoluteCenter
display: none display: none
width: 60vw width: 60%
height: 40vh height: 40%
background-color: var(--global-bgcolor) background-color: var(--global-bgcolor)
border: solid 2px var(--global-border-color) border: solid 2px var(--global-border-color)
@include mobile @include mobile
width: 100vw width: 100%
height: 100vh height: 100%
> * > *
@include flex @include flex
@@ -4,8 +4,9 @@
<title><!--[var:title]--></title> <title><!--[var:title]--></title>
<meta name="apple-mobile-web-app-capable" content="yes" /> <meta name="apple-mobile-web-app-capable" content="yes" />
<meta name = "viewport" content = "user-scalable = no, initial-scale=0.8,maximum-scale=0.8 ,shrink-to-fit=yes" /> <meta name = "viewport" content = "user-scalable = no, initial-scale=0.8,maximum-scale=0.8 ,shrink-to-fit=yes" />
<link rel="manifest" href="/manifest.webmanifest">
</head> </head>
<body class="darkMode"> <body ontouchstart="" class="darkMode">
<div id="authenticator"> <div id="authenticator">
</div> </div>
+4 -3
View File
@@ -5,6 +5,7 @@
<script src="https://unpkg.com/current-device/umd/current-device.min.js"></script> <script src="https://unpkg.com/current-device/umd/current-device.min.js"></script>
<meta name="apple-mobile-web-app-capable" content="yes" /> <meta name="apple-mobile-web-app-capable" content="yes" />
<meta name = "viewport" content = "user-scalable = no, initial-scale=0.8,maximum-scale=0.8 ,shrink-to-fit=yes" /> <meta name = "viewport" content = "user-scalable = no, initial-scale=0.8,maximum-scale=0.8 ,shrink-to-fit=yes" />
<link rel="manifest" href="/manifest.webmanifest">
</head> </head>
<body class="darkMode"> <body class="darkMode">
<div id="pageContainer"> <div id="pageContainer">
@@ -34,10 +35,10 @@
<small class="selectedTableCovers"></small> <small class="selectedTableCovers"></small>
</div> </div>
<a class="posButton"><!--[lang:order_table]--></a> <a class="posButton"><!--[lang:order_table]--></a>
<a class="posButton reserveTableButton" data-invisible-in-mode='["reservedTableSelected"]'><!--[lang:reserve_table]--></a> <a class="posButton reserveTableButton" data-invisible-in-mode='["reservedTableSelected", "activeTableSelected"]'><!--[lang:reserve_table]--></a>
<a class="posButton unreserveTableButton" data-visible-in-mode='["reservedTableSelected"]'><!--[lang:unreserve_table]--></a> <a class="posButton unreserveTableButton" data-visible-in-mode='["reservedTableSelected"]'><!--[lang:unreserve_table]--></a>
<a class="posButton payTableButton"><!--[lang:pay_table]--></a> <a class="posButton payTableButton" data-visible-in-mode='["activeTableSelected"]'><!--[lang:pay_table]--></a>
<a class="posButton viewTableButton"><!--[lang:view_table]--></a> <a class="posButton viewTableButton" data-visible-in-mode='["activeTableSelected"]'><!--[lang:view_table]--></a>
</div> </div>
</div> </div>
</div> </div>
@@ -66,5 +66,6 @@
<div class="virtualKeyboardRow"> <div class="virtualKeyboardRow">
<a></a> <a></a>
</div> </div>
<span class="forceFocus"></span>
</div> </div>
</div> </div>