summaryrefslogtreecommitdiff
path: root/addons/pos_restaurant/static/src/css
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
committerstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
commit3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch)
treea44932296ef4a9b71d5f010906253d8c53727726 /addons/pos_restaurant/static/src/css
parent0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff)
initial commit 2
Diffstat (limited to 'addons/pos_restaurant/static/src/css')
-rw-r--r--addons/pos_restaurant/static/src/css/restaurant.css583
1 files changed, 583 insertions, 0 deletions
diff --git a/addons/pos_restaurant/static/src/css/restaurant.css b/addons/pos_restaurant/static/src/css/restaurant.css
new file mode 100644
index 00000000..e2943473
--- /dev/null
+++ b/addons/pos_restaurant/static/src/css/restaurant.css
@@ -0,0 +1,583 @@
+/* --- Restaurant Specific CSS --- */
+
+.screen .screen-content-flexbox {
+ margin: 0px auto;
+ text-align: left;
+ height: 100%;
+ overflow: hidden;
+ position: relative;
+ display: -webkit-flex;
+ -webkit-flex-flow: column nowrap;
+ flex-flow: column nowrap;
+}
+
+/* ------ FLOOR SELECTOR ------- */
+
+.floor-selector {
+ line-height: 48px;
+ font-size: 18px;
+ display: -webkit-flex;
+ display: flex;
+ text-align: center;
+ width: 100%;
+}
+.floor-selector .button {
+ cursor: pointer;
+ border-left: dashed 1px rgb(196,196,196);
+ -webkit-flex: 1;
+ flex: 1;
+}
+.floor-selector .button:first-child {
+ border-left: none;
+}
+.floor-selector .button.active {
+ background: #6EC89B;
+ color: white;
+}
+
+/* ------ FLOOR MAP ------- */
+
+.floor-map {
+ -webkit-flex: 1;
+ flex: 1;
+ position: relative;
+ width: auto;
+ height: 100%;
+ box-shadow: 0px 6px 0px -3px rgba(0,0,0,0.07) inset;
+ background: #D8D7D7;
+ background-repeat: no-repeat;
+ overflow: auto;
+ background-size: cover;
+ transition: all 300ms ease-in-out;
+}
+
+.floor-map .tables {
+ position: relative;
+}
+@media screen and (min-width: 1024px) {
+ .floor-map .tables {
+ max-width: 1024px;
+ margin: auto;
+ max-height: 540px;
+ border-radius: 0px 0px 6px 6px;
+ border: dashed 2px rgba(0,0,0,0.1);
+ border-top: none;
+ height: 100%;
+ }
+}
+
+.floor-map .table{
+ position: absolute;
+ text-align: center;
+ font-size: 18px;
+ color: white;
+ background: rgb(53, 211, 116);
+ border-radius: 3px;
+ cursor: pointer;
+ box-shadow: 0px 3px rgba(0,0,0,0.07);
+ transition: background, background-color 300ms ease-in-out;
+ overflow: hidden;
+}
+.floor-map .table .table-cover {
+ display: block;
+ position: absolute;
+ left: 0; right: 0; bottom: 0;
+ border-radius: 0px 0px 3px 3px;
+ background: rgba(0,0,0,0.2);
+}
+.floor-map .table .table-cover.full {
+ border-radius: 3px 3px 3px 3px;
+}
+.floor-map .table .table-seats {
+ position: absolute;
+ display: inline-block;
+ bottom: 0;
+ left: 50%;
+ height: 20px;
+ width: 20px;
+ line-height: 20px;
+ font-size: 16px;
+ border-radius: 50%;
+ margin-left: -10px;
+ margin-bottom: 4px;
+ background: black;
+ color: white;
+ opacity: 0.2;
+ z-index: 3;
+}
+.floor-map .table .label {
+ display: block;
+ max-height: 100%;
+ overflow: hidden;
+ position: relative;
+ bottom: 5px;
+}
+.floor-map .table.selected {
+ outline: solid rgba(255,255,255,0.3);
+ cursor: move;
+ z-index: 50;
+}
+.floor-map .edit-button.editing {
+ position: fixed;
+ top: 0;
+ right: 0;
+ font-size: 20px;
+ margin: 8px;
+ line-height: 32px;
+ width: 32px;
+ text-align: center;
+ border-radius: 5px;
+ cursor: pointer;
+ border: solid 1px rgba(0,0,0,0.2);
+}
+.floor-map .edit-button.editing.active {
+ background: #444;
+ border-color: transparent;
+ color: white;
+}
+.floor-map .edit-bar {
+ position: fixed;
+ top: 0;
+ right: 40px;
+ margin: 8px;
+ line-height: 34px;
+ text-align: center;
+ border-radius: 5px;
+ cursor: pointer;
+ font-size: 20px;
+ background: rgba(255,255,255,0.5);
+ z-index: 100;
+}
+.floor-map .edit-bar .edit-button {
+ position: relative;
+ width: 32px;
+ display: inline-block;
+ cursor: pointer;
+ margin-right: -4px;
+ border-right: solid 1px rgba(0,0,0,0.2);
+ transition: all 150ms linear;
+}
+.floor-map .edit-bar .edit-button.disabled {
+ cursor: default;
+}
+.floor-map .edit-bar .edit-button.disabled > * {
+ opacity: 0.5;
+}
+.floor-map .edit-bar .color-picker {
+ position: absolute;
+ left: 36px;
+ top: 40px;
+ width: 180px;
+ height: 180px;
+ border-radius: 3px;
+ z-index: 100;
+}
+.floor-map .edit-bar .color-picker .color {
+ display: block;
+ float: left;
+ cursor: pointer;
+ width: 60px;
+ height: 60px;
+ background-color: gray;
+}
+.floor-map .edit-bar .color-picker .color.tl { border-top-left-radius: 3px; }
+.floor-map .edit-bar .color-picker .color.tr { border-top-right-radius: 3px; }
+.floor-map .edit-bar .color-picker .color.bl { border-bottom-left-radius: 3px; }
+.floor-map .edit-bar .color-picker .color.br { border-bottom-right-radius: 3px; }
+
+.floor-map .edit-bar .close-picker {
+ position: absolute;
+ bottom: 0;
+ left: 50%;
+ margin-left: -16px;
+ margin-bottom: -16px;
+ width: 32px;
+ height: 32px;
+ line-height: 32px;
+ text-align: center;
+ font-size: 20px;
+ border-radius: 16px;
+ background: black;
+ color: white;
+ cursor: pointer;
+}
+
+.floor-map .edit-bar .edit-button:last-child {
+ margin-right: 0;
+ border-right: none;
+}
+
+.floor-map .table.selected .table-handle {
+ padding: 0px;
+ position: absolute;
+ width: 48px;
+ height: 48px;
+ left: 50%;
+ top: 50%;
+ border-radius: 24px;
+ background: white;
+ box-shadow: 0px 2px 3px rgba(0,0,0,0.2);
+ cursor: grab;
+ transition: all 150ms linear;
+ z-index: 100;
+ transform: translate(-50%, -50%);
+}
+.floor-map .table.selected .table-handle:hover {
+ width: 60px;
+ height: 60px;
+ border-radius: 30px;
+}
+.floor-map .table .table-handle.top { top: 0; }
+.floor-map .table .table-handle.bottom { top: 100%; }
+.floor-map .table .table-handle.left { left: 0; }
+.floor-map .table .table-handle.right { left: 100%; }
+
+.floor-map .table .order-count {
+ position: absolute;
+ top: 0;
+ left: 50%;
+ background: black;
+ width: 20px;
+ margin-top: 1px;
+ margin-left: -10px;
+ height: 20px;
+ line-height: 20px;
+ border-radius: 10px;
+ font-size: 16px;
+ z-index: 10;
+}
+.floor-map .table .order-count.notify-printing {
+ background: red;
+}
+.floor-map .table .order-count.notify-skipped {
+ background: blue;
+}
+
+.floor-map .empty-floor {
+ position: absolute;
+ top: 0;
+ left: 0;
+ right: 0;
+ bottom: 0;
+ margin: auto;
+ width: 400px;
+ height: 40px;
+ font-size: 18px;
+ text-align: center;
+ opacity: 0.6;
+}
+.floor-map .empty-floor i {
+ display: inline-block;
+ padding: 6px 7px 3px;
+ margin: 0px 3px;
+ background: rgba(255,255,255,0.5);
+ border-radius: 3px;
+}
+
+
+/* ------ FLOOR BUTTON IN THE ORDER SELECTOR ------- */
+
+.pos .order-button.floor-button {
+ background: #6EC89B;
+ font-weight: bold;
+ font-size: 16px;
+ min-width: 128px;
+ padding-left: 16px;
+ padding-right: 16px;
+}
+.pos .order-button.floor-button .table-name {
+ font-weight: normal;
+}
+.pos .order-button.floor-button .fa{
+ font-size: 24px;
+}
+/* ------ ORDER LINE STATUS ------- */
+
+.pos .order .orderline.dirty {
+ border-left: solid 6px #6EC89B;
+ color: #6EC89B;
+ padding-left: 9px;
+}
+.pos .order .orderline.skip {
+ border-left: solid 6px #7F82AC;
+ color: #7F82AC;
+ padding-left: 9px;
+}
+
+
+/* ------ ORDER NOTES ------- */
+
+.pos .order .orderline-note {
+ margin: 8px;
+}
+.orderline-note .fa {
+ opacity: 0.5;
+ margin-right: 4px;
+}
+
+/* ------ SPLIT BILL SCREEN ------- */
+
+.splitbill-screen.screen .contents {
+ display: flex;
+ flex-flow: column nowrap;
+ margin: 0px auto;
+ max-width: 1024px;
+ border-left: dashed 1px rgb(215,215,215);
+ border-right: dashed 1px rgb(215,215,215);
+ height: 100%;
+}
+.splitbill-screen.screen .main {
+ display: flex;
+ flex-flow: row nowrap;
+ /* take the remaining vertical space */
+ flex: 1;
+ /* do not capture overflow in this element */
+ overflow: hidden;
+}
+.splitbill-screen.screen .main .lines {
+ display: flex;
+ flex: 1;
+ justify-content: center;
+ /* show scrollbar inside this element if its content overflows */
+ overflow-y: auto;
+}
+.splitbill-screen.screen .main .controls {
+ display: flex;
+ flex-flow: column nowrap;
+}
+.splitbill-screen.screen .pay-button {
+ margin: 16px;
+}
+.splitbill-screen.screen .pay-button .button {
+ background: #e2e2e2;
+ line-height: 74px;
+ font-size: 16px;
+ border: solid 1px rgb(202, 202, 202);
+ border-top-width: 0px;
+ cursor: pointer;
+ width: 100%;
+ text-align: center;
+}
+.splitbill-screen.screen .pay-button .button:first-child {
+ border-top-width: 1px;
+ border-top-left-radius: 3px;
+ border-top-right-radius: 3px;
+}
+.splitbill-screen.screen .pay-button .button:last-child {
+ border-bottom-left-radius: 3px;
+ border-bottom-right-radius: 3px;
+}
+.splitbill-screen.screen .pay-button .button:active {
+ background: black;
+ border-color: black;
+ color: white;
+}
+
+.splitbill-screen.screen .main .lines {
+ border-right: dashed 1px rgb(215,215,215);
+}
+
+.splitbill-screen.screen .main .controls {
+ flex: 1;
+}
+
+/* ------ NARROWER SCREEN ------ */
+@media screen and (max-width: 768px) {
+ .splitbill-screen.screen .main {
+ flex-flow: column nowrap;
+ }
+ .splitbill-screen.screen .main .controls {
+ border-top: dashed 1px rgb(215,215,215);
+ flex: none;
+ }
+}
+
+.tip-screen .tip-options .total-amount {
+ text-align: center;
+ font-size: x-large;
+ margin-top: 1.5rem;
+ margin-bottom: 1.5rem;
+}
+
+.tip-screen .tip-amount-options {
+ background: white;
+ border-radius: 3px;
+ margin-left: 4rem;
+ margin-right: 4rem;
+}
+
+.tip-screen .percentage-amounts {
+ display: flex;
+}
+
+.tip-screen .tip-options .button {
+ background: #FAFAFA;
+ border: solid 1px rgb(209, 209, 209);
+ border-radius: 3px;
+ flex: 1;
+ margin: 1rem;
+ display: flex;
+ flex-flow: column nowrap;
+ justify-content: center;
+ cursor: pointer;
+}
+
+.tip-screen .tip-options .button .percentage {
+ text-align: center;
+ font-size: xx-large;
+ color: #2196F3;
+ padding-top: 4rem;
+ padding-bottom: 0.75rem;
+}
+
+.tip-screen .tip-options .button .amount {
+ text-align: center;
+ font-size: large;
+ color: #757575;
+ padding-bottom: 4rem;
+}
+
+.tip-screen .custom-amount-form {
+ display: flex;
+}
+
+.tip-screen .custom-amount-form .item {
+ font-size: x-large;
+ color: #2196F3;
+ margin: 1rem;
+ flex: 1
+}
+
+.tip-screen .custom-amount-form .label {
+ padding-top: 1.5rem;
+ padding-bottom: 1.5rem;
+ text-align: center;
+}
+
+.tip-screen .custom-amount-form .input {
+ background: #FAFAFA;
+ border: solid 1px rgb(209, 209, 209);
+ border-radius: 3px;
+ margin: 1rem;
+ text-align: right;
+ overflow: hidden;
+ position: relative;
+}
+
+.tip-screen .custom-amount-form .input .currency {
+ position: absolute;
+ display: flex;
+ right: 0;
+ top: 0;
+ bottom: 0;
+ width: 3rem;
+ justify-content: center;
+ align-items: center;
+}
+
+.tip-screen .custom-amount-form .input input {
+ border: none;
+ padding: 0;
+ outline: none;
+ font-size: x-large;
+ text-align: right;
+ margin-left: 1rem;
+ margin-right: 3rem;
+ height: 100%;
+ width: calc(100% - 4rem);
+ background: #FAFAFA;
+ color: #2196F3;
+}
+
+.tip-screen .custom-amount-form .input input:focus {
+ border: none;
+ padding: 0;
+ outline: none;
+}
+
+.tip-screen .custom-amount-form .add {
+ text-align: center;
+}
+
+.tip-screen .no-tip {
+ display: flex;
+ color: #2196F3;
+ font-size: x-large;
+}
+
+.tip-screen .no-tip .button {
+ text-align: center;
+ flex: 1;
+ padding: 1.5rem;
+}
+
+.tip-screen .pos-receipt-container {
+ display: none;
+ position: fixed;
+ top: 0;
+ left: 0;
+ margin: 0;
+}
+
+@media print {
+ .tip-screen .pos-receipt-container {
+ display: block;
+ }
+ .tip-screen .pos-receipt-container * {
+ visibility: visible;
+ }
+}
+
+.pos-receipt .tip-form {
+ padding-top: 0.75rem;
+ padding-bottom: 0.75rem;
+}
+
+.pos-receipt .tip-form .title {
+ text-align: center;
+}
+
+.pos-receipt .tip-form > div {
+ margin-top: 1rem;
+}
+
+.pos-receipt .tip-form .option {
+ display: flex;
+ flex-flow: column nowrap;
+ align-items: center;
+ flex: 1;
+ justify-content: center;
+}
+
+.pos-receipt .tip-form .percentage-options {
+ display: flex;
+ flex-flow: row nowrap;
+}
+
+.ticket-screen .tip-cell {
+ height: 100%;
+ width: 100%;
+ text-align: right;
+ white-space: nowrap;
+}
+
+.ticket-screen .tip-cell input {
+ width: 100%;
+ text-align: right;
+ font-size: medium;
+ color: #555555;
+ padding-bottom: 5px;
+ border: none;
+ outline: none;
+}
+
+.ticket-screen .tip-cell input:focus {
+ border: none;
+ outline: none;
+ border-bottom: solid 1px #555555;
+}
+
+.multiprint-flex {
+ display: flex;
+ justify-content: space-between;
+}