Initial commit: Sale packages

This commit is contained in:
Ernad Husremovic 2025-08-29 15:20:49 +02:00
commit 14e3d26998
6469 changed files with 2479670 additions and 0 deletions

View file

@ -0,0 +1,307 @@
.css_attribute_color {
position: relative;
display: inline-block;
border: 5px solid $input-border-color;
border-radius: 50%;
text-align: center;
transition: $input-transition;
@include o-field-pointer();
&:before {
content: "";
display: block;
@include o-position-absolute(-3px, -3px, -3px, -3px);
border: 4px solid white;
border-radius: 50%;
box-shadow: inset 0 0 3px rgba(black, 0.3);
}
input {
margin: 8px;
height: 13px;
width: 13px;
opacity: 0;
}
&.active {
border: 5px solid map-get($theme-colors, 'primary');
}
&.custom_value {
background-image: linear-gradient(to bottom right, #FF0000, #FFF200, #1E9600);
}
&.transparent {
background-image: url(/web/static/img/transparent.png);
}
}
.css_not_available_msg {
display: none;
}
.css_not_available.js_product {
.css_quantity {
display: none !important;
}
.css_not_available_msg {
display: block;
}
.availability_messages {
display: none;
}
.js_add,
.oe_price,
.oe_default_price,
.oe_optional {
display: none;
}
}
.css_quantity {
width: initial; // We don't want the quantity form to be full-width
.btn, input {
border-color: $input-border-color;
}
input {
// Needs !important because themes customize btns' padding direclty
// rather than change '$input-btn-padding-X' (shared with inputs).
height: auto !important;
max-width: 5ch;
}
}
option.css_not_available {
color: #ccc;
}
select.form-select.css_attribute_select {
background-image: str-replace(url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='175' height='100' fill='#{theme-color('primary')}'><polygon points='0,0 100,0 50,50'/></svg>"), "#", "%23") ;
background-size: 20px;
background-position: 100% 65%;
background-repeat: no-repeat;
max-width: 400px;
}
label, .o_variant_pills {
&.css_not_available {
opacity: 0.6;
}
}
label.css_attribute_color.css_not_available {
opacity: 1;
&:after {
content: "";
@include o-position-absolute(-5px, -5px, -5px, -5px);
border: 2px solid map-get($theme-colors, 'danger');
border-radius: 50%;
background: str-replace(url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='39' height='39'><line y2='0' x2='39' y1='39' x1='0' style='stroke:#{map-get($theme-colors, 'danger')};stroke-width:2'/><line y2='1' x2='40' y1='40' x1='1' style='stroke:rgb(255,255,255);stroke-width:1'/></svg>"), "#", "%23") ;
background-position: center;
background-repeat: no-repeat;
}
}
.variant_attribute {
padding-bottom: 1rem;
.attribute_name {
display: flex;
align-items: center;
font-size: 0.9rem;
text-transform: uppercase;
padding-bottom: 0.5rem;
&:after {
content: '';
margin-left: $spacer;
flex-grow: 1;
border-bottom: 1px solid map-get($grays, '400');
}
}
.radio_input_value {
font-weight: 400;
&:not(.o_variant_pills_input_value) {
margin-right: $spacer;
&, > span {
vertical-align: middle;
}
}
&.o_variant_pills_input_value {
.badge {
color: map-get($grays, '600');
background: white;
border: 1px solid map-get($theme-colors, 'primary');
&, > span {
vertical-align: middle;
}
.sign_badge_price_extra {
font-size: 1.1rem;
}
}
}
}
.variant_custom_value {
margin-bottom: 0.7rem;
&.custom_value_radio {
display: inline-block;
}
}
select {
margin-bottom: 0.5rem;
}
ul.list-inline {
margin-left: 0;
}
.o_variant_pills {
padding: $spacer/2 $spacer;
margin-right: 0.2rem;
border: none;
cursor: default !important;
&.btn.active {
background-color: map-get($theme-colors, 'primary');
}
&:not(.active) {
color: map-get($grays, '600');
background-color: map-get($grays, '200');
}
input {
-moz-appearance: none;
-webkit-appearance: none;
appearance: none;
opacity: 0;
position: absolute !important;
}
}
.radio_input_value, select, label {
.badge {
margin-left: 3px;
padding-left: 3px;
}
.sign_badge_price_extra {
display: inline-block;
width: 1rem;
height: 1rem;
color: map-get($theme-colors, 'primary');
background: white;
line-height: 1rem;
border-radius: 50%;
}
}
}
.o_product_configurator {
.product_detail_img {
max-height: 240px;
}
}
.table-striped tbody tr:nth-of-type(odd) {
.o_select_options {
background-color: rgba(0, 0, 0, 0.025);
}
.o_total_row {
font-size: 1.2rem;
}
}
.modal.o_technical_modal .oe_advanced_configurator_modal .btn.js_add_cart_json {
padding: 0.075rem 0.75rem;
}
.js_product {
.td-product_name {
word-wrap: break-word;
}
.td-product_name {
min-width: 140px;
}
.td-img {
width: 100px;
}
.td-qty {
width: 200px;
a.input-group-addon {
background-color: transparent;
border: 0px;
}
.input-group {
display: inline-flex;
}
}
.td-action {
width: 30px;
}
.td-price,
.td-price-total {
width: 120px;
}
@include media-breakpoint-down(md) {
.td-img,
.td-price-total {
display: none;
}
.td-qty {
width: 60px;
}
.td-price {
width: 80px;
}
}
@media (max-width: 476px) {
.td-qty {
width: 60px;
}
#modal_optional_products table thead,
.oe_cart table thead {
display: none;
}
#modal_optional_products table td.td-img,
.oe_cart table td.td-img {
display: none;
}
}
}
.o_total_row {
height: 50px;
}
.oe_striked_price {
text-decoration: line-through;
white-space: nowrap;
}

View file

@ -0,0 +1,11 @@
.o_onboarding_order_confirmation {
& span.o_onboarding_order_confirmation_help img {
display: none;
position: absolute;
bottom:0;
}
& span.o_onboarding_order_confirmation_help:hover img {
display: block
}
}

View file

@ -0,0 +1,42 @@
/* ---- My Orders page ---- */
.orders_vertical_align {
display: flex;
align-items: center;
}
.orders_label_text_align {
vertical-align: 15%;
}
/* ---- Order page ---- */
.sale_tbody .o_line_note {
word-break: break-word;
word-wrap: break-word;
overflow-wrap: break-word;
}
.sale_tbody input.js_quantity {
min-width: 48px;
text-align: center;
}
.sale_tbody div.input-group.w-50.pull-right {
width: 100% !important;
}
.o_portal .sale_tbody .js_quantity_container {
.js_quantity {
padding: 0;
}
.input-group-text {
padding: 0.2rem 0.4rem;
}
@include media-breakpoint-down(md) {
width: 100%;
}
}

View file

@ -0,0 +1,3 @@
.sale_tbody .o_line_note {
word-break: break-word;
}