Skip to content
Code-Schnipsel Gruppen Projekte

Revisionen vergleichen

Änderungen werden so angezeigt, als ob die Quellrevision mit der Zielrevision zusammengeführt würde. Erfahre mehr über den Vergleich von Revisionen.

Quelle

Zielprojekt auswählen
No results found

Ziel

Zielprojekt auswählen
  • quiqqer/template-cologne
1 Ergebnis
Änderungen anzeigen
Commits auf Quelle (22)
werden angezeigt mit 156 Ergänzungen und 491 Löschungen
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<phive xmlns="https://phar.io/phive"> <phive xmlns="https://phar.io/phive">
<phar name="phpstan" version="1.11.8" installed="1.11.8" location="./tools/phpstan" copy="false"/> <phar name="phpstan" version="^1.11.5" installed="1.11.5" location="./tools/phpstan" copy="false"/>
<phar name="phpunit" version="^10.5.20" installed="10.5.20" location="./tools/phpunit" copy="false"/> <phar name="phpunit" version="^10.5.20" installed="10.5.20" location="./tools/phpunit" copy="false"/>
<phar name="phpcs" version="^3.10.1" installed="3.10.1" location="./tools/phpcs" copy="false"/> <phar name="phpcs" version="^3.10.1" installed="3.10.1" location="./tools/phpcs" copy="false"/>
<phar name="phpcbf" version="^3.10.1" installed="3.10.1" location="./tools/phpcbf" copy="false"/> <phar name="phpcbf" version="^3.10.1" installed="3.10.1" location="./tools/phpcbf" copy="false"/>
......
...@@ -28,16 +28,11 @@ a.qui-button, ...@@ -28,16 +28,11 @@ a.qui-button,
float: none; /* qui-button reset */ float: none; /* qui-button reset */
} }
button > .fa, button > .fa:not(:only-child),
.btn > .fa { .btn > .fa:not(:only-child) {
margin-right: .75rem; margin-right: .75rem;
} }
button.loading > .fa,
.btn.loading > .fa {
margin-right: 0;
}
/*****************************/ /*****************************/
/* button primary & standard */ /* button primary & standard */
/*****************************/ /*****************************/
......
...@@ -21,7 +21,6 @@ select { ...@@ -21,7 +21,6 @@ select {
background-image: url("../images/arrow-select.svg"); background-image: url("../images/arrow-select.svg");
background-position: calc(100% - 10px) center; background-position: calc(100% - 10px) center;
background-repeat: no-repeat; background-repeat: no-repeat;
background-size: 20px auto;
background-size: 8px; background-size: 8px;
height: 40px; height: 40px;
padding-bottom: 0; padding-bottom: 0;
...@@ -58,6 +57,28 @@ textarea:focus { ...@@ -58,6 +57,28 @@ textarea:focus {
border-color: #a9a8a5; border-color: #a9a8a5;
} }
/* disabled */
:is(
input:where(:not([type])),
[type='text'],
[type='email'],
[type='url'],
[type='password'],
[type='number'],
[type='date'],
[type='datetime-local'],
[type='month'],
[type='search'],
[type='tel'],
[type='time'],
[type='week'],
[multiple],
textarea,
select
):where([disabled]) {
opacity: 0.6;
}
/* iOs input search fix */ /* iOs input search fix */
input[type="search"] { input[type="search"] {
-webkit-appearance: none; -webkit-appearance: none;
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
/* simple user info */ /* simple user info */
/********************/ /********************/
.quiqqer-fupc-userinfo { .quiqqer-fupc-userinfo {
border: 1px solid #ddd; border: var(--_qui-cologne-theme-border-width) solid var(--_qui-cologne-theme-border-color);
border-radius: 5px; border-radius: 5px;
margin-bottom: 1em; margin-bottom: 1em;
background: #fff; background: #fff;
...@@ -21,67 +21,33 @@ ...@@ -21,67 +21,33 @@
background: url("../images/brushed_alu.png"); background: url("../images/brushed_alu.png");
} }
.quiqqer-frontendUsers-profile-container { /***********/
display: flex; /* Profile */
margin-bottom: 2rem; /***********/
margin-top: 2rem; .quiqqer-frontendUsers-controls-profile {
} --qui-frontend-users-profile__radius: 0;
--qui-frontend-users-profile__sidebar-width: 360px;
.quiqqer-frontendUsers-controls-profile .quiqqer-frontendUsers-controls-profile-categories { --qui-frontend-users-profile__content-maxWidth: 700px;
padding-right: 20px; --qui-frontend-users-profile__sidebar-nav-item-outline--hover: none;
} --qui-frontend-users-profile__sidebar-nav-item-bg-color--hover: transparent;
.quiqqer-frontendUsers-controls-profile .quiqqer-frontendUsers-controls-profile-categoryContent {
padding-left: 20px;
}
@media (max-width: 768px) {
.quiqqer-frontendUsers-controls-profile .quiqqer-frontendUsers-controls-profile-categories {
padding: 0;
width: 100%;
}
.quiqqer-frontendUsers-controls-profile .quiqqer-frontendUsers-controls-profile-categoryContent {
padding-left: 0;
}
} }
/*****************/ /*****************/
/* category menu */ /* category menu */
/*****************/ /*****************/
.quiqqer-fupc-category { .quiqqer-fupc-category {
margin-bottom: 2em; /*margin-bottom: 2em;*/
}
.quiqqer-fupc-category:last-child {
margin-bottom: 0;
} }
.quiqqer-fupc-category-header { .quiqqer-fupc-category-header {
line-height: 30px; line-height: 30px;
} }
.quiqqer-fupc-category .quiqqer-fupc-category-header {
border-bottom: 1px solid #ddd;
cursor: pointer;
font-size: 1.5em;
line-height: 30px;
}
.quiqqer-fu-profile-categories-category-items {
clear: both;
float: left;
width: 100%;
}
.quiqqer-fupc-category-items-item { .quiqqer-fupc-category-items-item {
border: 1px solid #ddd; border-top: var(--_qui-cologne-theme-border-width) solid var(--_qui-cologne-theme-border-color);
border-bottom: none; border-left: var(--_qui-cologne-theme-border-width) solid var(--_qui-cologne-theme-border-color);
border-right: var(--_qui-cologne-theme-border-width) solid var(--_qui-cologne-theme-border-color);
clear: both; clear: both;
color: #333;
display: flex;
float: left;
line-height: 40px;
overflow: hidden; overflow: hidden;
padding: 5px 0; padding: 5px 0;
position: relative; position: relative;
...@@ -89,26 +55,13 @@ ...@@ -89,26 +55,13 @@
width: 100%; width: 100%;
} }
.quiqqer-fupc-category.quiqqer-fupc-category--open .quiqqer-fupc-category-header { .quiqqer-fupc-category-items-item:last-child {
border-bottom: none !important; border-bottom: var(--_qui-cologne-theme-border-width) solid var(--_qui-cologne-theme-border-color);
}
.quiqqer-fupc-category--open .quiqqer-fupc-category-items-item {
background: #fff;
}
.quiqqer-fupc-category .quiqqer-fu-profile-categories-category-items .quiqqer-fupc-category-items-item--active,
.quiqqer-fupc-category .quiqqer-fu-profile-categories-category-items .quiqqer-fupc-category-items-item:hover {
background: #fff;
}
.quiqqer-fupc-category--open .quiqqer-fupc-category-items-item:last-child {
border-bottom: 1px solid #ddd;
border-bottom-left-radius: 5px; border-bottom-left-radius: 5px;
border-bottom-right-radius: 5px; border-bottom-right-radius: 5px;
} }
.quiqqer-fupc-category--open .quiqqer-fupc-category-items-item:first-child { .quiqqer-fupc-category-items-item:first-child {
border-top-left-radius: 5px; border-top-left-radius: 5px;
border-top-right-radius: 5px; border-top-right-radius: 5px;
} }
...@@ -122,45 +75,21 @@ ...@@ -122,45 +75,21 @@
width: 0; width: 0;
} }
.quiqqer-fu-profile-categories-category-items .quiqqer-fupc-category-items-item--active, .quiqqer-fupc-category-items-item[data-active]:before,
.quiqqer-fu-profile-categories-category-items .quiqqer-fupc-category-items-item:hover { .quiqqer-fupc-category-items-item:is(:hover, :focus):before {
background: none;
}
.quiqqer-fu-profile-categories-category-items .quiqqer-fupc-category-items-item--active:before,
.quiqqer-fu-profile-categories-category-items .quiqqer-fupc-category-items-item:hover:before {
width: 4px; width: 4px;
} }
.quiqqer-fupc-category-items-item .fa { .quiqqer-fupc-category-items-item .fa {
line-height: 40px; line-height: 40px;
width: 40px;
} }
/***********/ /***********/
/* address */ /* address */
/***********/ /***********/
.quiqqer-frontend-users-address header,
.quiqqer-frontendUsers-userdata-section header {
padding: 20px 0;
}
.quiqqer-frontend-users-address header h2,
.quiqqer-frontendUsers-userdata-section header h2 {
padding-bottom: 0;
}
.quiqqer-frontend-users-address-edit .qui-select,
.quiqqer-frontend-users-address-edit .qui-select .drop-icon {
height: 40px;
}
.quiqqer-frontend-users-address-edit .qui-select .text {
line-height: 40px;
}
.quiqqer-frontendUsers-userdata-invoiceaddress { .quiqqer-frontendUsers-userdata-invoiceaddress {
border-bottom: 1px solid rgba(0, 0, 0, 0.1); border-bottom: 1px solid rgba(0, 0, 0, 0.1);
float: left;
margin-bottom: 20px; margin-bottom: 20px;
padding-bottom: 20px; padding-bottom: 20px;
width: 100%; width: 100%;
...@@ -172,72 +101,10 @@ ...@@ -172,72 +101,10 @@
margin-right: 10px; margin-right: 10px;
} }
.quiqqer-frontend-users-address-list-entry {
border: 1px solid #ddd;
background: #fff;
}
.quiqqer-frontendUsers-controls-profile-categoryContent .quiqqer-frontend-users-address-list-entry-buttons button {
width: inherit;
margin-bottom: 0;
}
.cologne-main .quiqqer-frontendUsers-userdata-address h2,
.cologne-main .quiqqer-frontendUsers-userdata-invoiceaddress h2,
.cologne-main .quiqqer-frontendUsers-userdata-invoiceaddress header,
.cologne-main .quiqqer-frontendUsers-controls-profile-changepassword h2,
.cologne-main .quiqqer-frontendUsers-controls-profile-deleteaccount h2 {
margin-top: 0;
padding-top: 0;
}
@media (max-width: 768px) {
.quiqqer-frontendUsers-controls-profile-categories-mobile {
margin-bottom: 2em;
}
.quiqqer-frontend-users-address-list .quiqqer-frontend-users-address-list-entry {
width: 100%;
}
.quiqqer-frontend-users-address-list .quiqqer-frontend-users-address-list-entry:nth-child(even) {
margin-left: 0;
}
.quiqqer-frontend-users-address-list .quiqqer-frontend-users-address-list-entry:nth-child(odd) {
margin-right: 0;
}
}
/* email */
.quiqqer-frontendUsers-userdata-address-additional .quiqqer-frontendUsers-userdata-email input {
float: left;
width: calc(100% - 70px);
margin-right: 10px;
}
.quiqqer-frontendUsers-userdata-email .quiqqer-frontendUsers-userdata-email-edit {
line-height: 40px;
border-width: 1px;
border-radius: 0.25rem;
}
@media screen and (max-width: 767px) {
.cologne-main .quiqqer-frontendUsers-controls-profile-control label {
margin-bottom: 10px;
}
}
/**********/
/* Avatar */
/**********/
.quiqqer-frontendUsers-userAvatar-gravatar {
margin: 1.5rem 0;
}
/******************/ /******************/
/* profile orders */ /* profile orders */
/******************/ /******************/
/* hide top pagination */
.quiqqer-order-profile-orders .quiqqer-order-profile-orders-pagination:first-child { .quiqqer-order-profile-orders .quiqqer-order-profile-orders-pagination:first-child {
display: none; display: none;
} }
...@@ -252,12 +119,18 @@ ...@@ -252,12 +119,18 @@
:where(.loginAndRegister) .quiqqer-fu-login-container { :where(.loginAndRegister) .quiqqer-fu-login-container {
background: #f8f8f8; background: #f8f8f8;
border: 1px solid #ddd; border: var(--_qui-cologne-theme-border-width) solid var(--_qui-cologne-theme-border-color);
max-width: 400px; max-width: 400px;
position: relative; position: relative;
width: 100%; width: 100%;
} }
.loginAndRegister .quiqqer-fu-login-container-width {
width: 100%;
max-width: 400px;
margin-inline: auto;
}
:where(.loginAndRegister) .quiqqer-frontendUsers-login .quiqqer-fu-login-container { :where(.loginAndRegister) .quiqqer-frontendUsers-login .quiqqer-fu-login-container {
background: none; background: none;
border: none; border: none;
...@@ -274,17 +147,18 @@ ...@@ -274,17 +147,18 @@
/******************/ /******************/
/* reset password */ /* reset password */
/******************/ /******************/
:where(.loginAndRegister) .quiqqer-fu-login-container .quiqqer-fu-login-forget-password-reset [name="cancel"] { .quiqqer-fu-login-container .quiqqer-fu-login-forget-password-reset [name="cancel"] {
background: none; background: none;
border: none; border: none;
color: inherit; color: inherit;
float: right;
margin-top: 1rem; margin-top: 1rem;
padding: 0; padding: 0;
position: initial; position: initial;
width: 100%;
text-align: right;
} }
:where(.loginAndRegister) .quiqqer-fu-login-container .quiqqer-fu-login-forget-password-reset [type="submit"] { .quiqqer-fu-login-container .quiqqer-fu-login-forget-password-reset [type="submit"] {
margin-top: 1rem; margin-top: 1rem;
} }
...@@ -317,8 +191,7 @@ ...@@ -317,8 +191,7 @@
} }
.loginAndRegister .quiqqer-fu-login-forget-password-reset { .loginAndRegister .quiqqer-fu-login-forget-password-reset {
padding: 1.5rem 2rem; padding-inline: 2rem;
background: #f8f8f8;
} }
.quiqqer-fu-registrationSignUp-terms-text [name="decline"] { .quiqqer-fu-registrationSignUp-terms-text [name="decline"] {
......
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
max-height: calc(100vh - 130px); /* header height + top bar height */ max-height: calc(100vh - 130px); /* header height + top bar height */
padding: 0 !important; padding: 0 !important;
width: 350px; width: 350px;
top: calc(var(--_qui-cologne-header-height, 100px) - 1px) !important; /* -1 because of border width */
} }
.quiqqer-order-basket-small-container > .qui-control { .quiqqer-order-basket-small-container > .qui-control {
......
...@@ -8,6 +8,15 @@ ...@@ -8,6 +8,15 @@
padding: 0; padding: 0;
} }
/* bad button design in this template... */
.quiqqer-order-ordering-nobody-tabs-main__item .quiqqer-fu-login-forget-password-reset [name="cancel"],
.quiqqer-order-ordering-nobody-tabs-main__item .quiqqer-fu-login-forget-password-reset [name="cancel"]:is(:hover, :focus, :active) {
width: 100%;
background-color: transparent;
color: inherit;
border: none;
}
/****************/ /****************/
/* step: basket */ /* step: basket */
/****************/ /****************/
...@@ -137,18 +146,28 @@ td.quiqqer-order-basket-articles-article-remove button:hover { ...@@ -137,18 +146,28 @@ td.quiqqer-order-basket-articles-article-remove button:hover {
.quiqqer-shoppingCart-basket-end, .quiqqer-shoppingCart-basket-end,
.quiqqer-order-basket-end { .quiqqer-order-basket-end {
--gap: 1.5rem;
background: #f8f8f8; background: #f8f8f8;
border: 1px solid #ddd; border: 1px solid #ddd;
clear: both;
margin-top: 20px; margin-top: 20px;
min-height: 90px;
padding: 20px; padding: 20px;
position: relative; position: relative;
width: 100%; width: 100%;
display: flex;
flex-direction: column;
gap: var(--gap);
}
.quiqqer-order-basket-end > *:not(:first-child, :only-child) {
border-top: var(--_qui-cologne-theme-border-width) solid var(--_qui-cologne-theme-border-color);
padding-top: var(--gap);
} }
@media screen and (max-width: 767px) { @media screen and (max-width: 767px) {
.quiqqer-shoppingCart-basket-end, .quiqqer-order-basket-end { .quiqqer-shoppingCart-basket-end,
.quiqqer-order-basket-end {
--gap: 1rem;
padding: 10px; padding: 10px;
} }
} }
...@@ -208,45 +227,7 @@ td.quiqqer-order-basket-articles-article-remove button:hover { ...@@ -208,45 +227,7 @@ td.quiqqer-order-basket-articles-article-remove button:hover {
border-bottom: 3px double #999999; border-bottom: 3px double #999999;
} }
/* coupons */
.quiqqer-coupons-couponcodeinput-title {
display: none;
}
input.quiqqer-coupons-couponcodeinput-input:hover,
input.quiqqer-coupons-couponcodeinput-input:focus,
input.quiqqer-coupons-couponcodeinput-input:active {
background: #fff;
border-color: #28a745;
}
.btn.quiqqer-coupons-couponcodeinput-btn {
background: #fff;
border-color: #28a745;
color: #28a745;
}
.btn.quiqqer-coupons-couponcodeinput-btn:hover,
.btn.quiqqer-coupons-couponcodeinput-btn:active {
background: #28a745;
color: #fff;
}
@media screen and (max-width: 767px) { @media screen and (max-width: 767px) {
.quiqqer-coupons-couponcodeinput {
flex-wrap: wrap;
}
.quiqqer-coupons-couponcodeinput label {
margin: 0 0 1rem 0;
width: 100%;
}
.quiqqer-coupons-couponcodeinput input,
.btn.quiqqer-coupons-couponcodeinput-btn {
width: 100%;
}
.quiqqer-order-basket-articles-article td:before { .quiqqer-order-basket-articles-article td:before {
font-weight: bold; font-weight: bold;
} }
...@@ -363,43 +344,6 @@ input.quiqqer-coupons-couponcodeinput-input:active { ...@@ -363,43 +344,6 @@ input.quiqqer-coupons-couponcodeinput-input:active {
.quiqqer-order-ordering-buttons a { .quiqqer-order-ordering-buttons a {
width: 100%; width: 100%;
} }
.quiqqer-order-basket-end {
height: inherit;
padding: 1rem;
text-align: center;
}
.quiqqer-order-basket-end > * {
display: inline-block;
float: none !important;
margin: 0 !important;
width: 100%;
}
.quiqqer-order-basket-end > * + * {
margin-top: 20px !important;
}
.quiqqer-payment-paypal-express {
padding: 1rem 0;
}
.quiqqer-order-basket-end .quiqqer-coupons-couponcodeinput {
flex-direction: column;
padding: 0;
text-align: left;
}
.quiqqer-order-basket-end .quiqqer-coupons-couponcodeinput input {
margin-bottom: 1rem;
width: 100%;
}
.quiqqer-coupons-couponcodeinput label span {
display: block;
padding: 5px 10px;
}
} }
/******************/ /******************/
......
...@@ -747,7 +747,7 @@ a.toTop:before { ...@@ -747,7 +747,7 @@ a.toTop:before {
border-bottom: 1px solid #ddd; border-bottom: 1px solid #ddd;
box-shadow: 0 0 20px 0 rgba(57, 57, 57, 0); box-shadow: 0 0 20px 0 rgba(57, 57, 57, 0);
display: flex; display: flex;
height: 100px; height: var(--_qui-cologne-header-height, 100px);
justify-content: space-between; justify-content: space-between;
left: 0; left: 0;
position: relative; position: relative;
...@@ -758,8 +758,9 @@ a.toTop:before { ...@@ -758,8 +758,9 @@ a.toTop:before {
} }
.cologne-header-fixed { .cologne-header-fixed {
--_qui-cologne-header-height: 60px;
box-shadow: 0 0 20px 0 rgba(57, 57, 57, 0.2); box-shadow: 0 0 20px 0 rgba(57, 57, 57, 0.2);
height: 60px;
position: fixed; position: fixed;
z-index: 100; /* Because of the search dropdown */ z-index: 100; /* Because of the search dropdown */
} }
...@@ -927,6 +928,7 @@ a.toTop:before { ...@@ -927,6 +928,7 @@ a.toTop:before {
.cologne-main { .cologne-main {
margin-top: 1rem; margin-top: 1rem;
margin-bottom: 1rem;
width: 100%; width: 100%;
} }
...@@ -1522,6 +1524,12 @@ a.toTop:before { ...@@ -1522,6 +1524,12 @@ a.toTop:before {
.cologne-login-dialog .qui-window-popup-content { .cologne-login-dialog .qui-window-popup-content {
padding: 20px 40px; padding: 20px 40px;
display: grid;
grid-template-areas:
'logo'
'body'
'reset';
grid-template-rows: auto 1fr;
} }
.quiqqer-frontendUsers-loginWindow .quiqqer-frontendUsers-login { .quiqqer-frontendUsers-loginWindow .quiqqer-frontendUsers-login {
...@@ -1614,11 +1622,12 @@ a.toTop:before { ...@@ -1614,11 +1622,12 @@ a.toTop:before {
/* sing up / registration in link */ /* sing up / registration in link */
.login-popup-create-account-wrapper { .login-popup-create-account-wrapper {
bottom: 10px;
left: 0;
position: absolute;
text-align: center; text-align: center;
width: 100%; width: 100%;
grid-area: reset;
margin-top: 1rem;
z-index: 1;
position: relative;
} }
/*************************/ /*************************/
......
section.quiqqer-order-profile-orders-order {
margin-bottom: 2em;
}
.quiqqer-order-profile-orders-order-header-orderId {
float: left;
position: relative;
width: 25%;
}
.quiqqer-order-profile-orders-order-header-date,
.quiqqer-order-profile-orders-order-header-total,
.quiqqer-order-profile-orders-order-header-addressInvoice,
.quiqqer-order-profile-orders-order-header-addressDelivery,
.quiqqer-order-profile-orders-order-header-orderId {
padding: 0 10px;
}
.quiqqer-order-profile-orders-order-header-date {
padding-left: 0;
}
.quiqqer-order-profile-orders-order-header-orderId {
padding-right: 0;
}
.quiqqer-order-profile-orders-order-header-date > span:first-child,
.quiqqer-order-profile-orders-order-header-total > span:first-child,
.quiqqer-order-profile-orders-order-header-addressInvoice > span:first-child,
.quiqqer-order-profile-orders-order-header-addressDelivery > span:first-child,
.quiqqer-order-profile-orders-order-header-orderId > span:first-child {
display: block;
}
/**
1. avoid !important and increase the specificity (not good)
2. set address position at the bottom line 100% height + 10px padding of "header"
*/
.quiqqer-order-profile-orders-order-header-addressInvoice address:is(address) { /* 1 */
top: calc(100% + 10px); /* 2 */
}
.quiqqer-order-profile-orders-order-header-addressInvoice span {
align-items: center;
display: flex;
max-width: 100%;
}
.quiqqer-order-profile-orders-order-header-addressInvoice > span > span {
display: block;
max-width: 100%;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.quiqqer-order-profile-orders-order-header-addressInvoice .fa {
margin-left: 5px;
}
.quiqqer-order-profile-orders-order-articles {
background: #fff;
}
.quiqqer-order-profile-orders-order-articles-article {
border-bottom: 1px dashed #ddd;
padding: 2em 0;
}
.quiqqer-order-profile-orders-order-articles-article:last-child {
border-bottom: none;
}
.quiqqer-order-profile-orders-order-articles-article {
align-items: start;
border-bottom: 1px dashed #ddd;
display: grid;
grid-column-gap: 20px;
grid-template-columns: 25% auto;
grid-template-rows: auto;
justify-items: start;
padding: 2em 0;
}
.quiqqer-order-profile-orders-order-articles-image {
align-items: flex-start;
align-self: start;
border-right: 1px dashed #ddd;
display: flex;
grid-row: 1 / 5;
justify-content: center;
padding: 20px;
width: 100%;
}
.quiqqer-order-profile-orders-order-articles-information {
padding-top: 0 !important;
}
.quiqqer-order-profile-orders-order-articles-title {
color: inherit;
font-size: 1.75em;
}
.quiqqer-order-profile-orders-order-articles-description {
margin: 5px 0;
color: #9ba3ad;
}
.quiqqer-order-profile-orders-order-articles-price {
font-size: 1.2em;
font-weight: 500;
padding-bottom: 10px;
}
.quiqqer-order-profile-orders-order-articles-rebuy {
align-self: end;
}
/**********/
/* footer */
/**********/
.quiqqer-order-profile-orders-order footer {
display: flex;
justify-content: space-between;
}
.quiqqer-order-profile-orders-order footer .quiqqer-order-profile-orders-order-footer-paymentType {
margin-top: 0;
}
.quiqqer-order-profile-orders-order-footer-rightWrapper {
display: flex;
align-items: center;
}
@media (max-width: 768px) {
/***********************/
/* article list header */
/***********************/
.quiqqer-order-profile-orders-order-header-date, .quiqqer-order-profile-orders-order-header-total, .quiqqer-order-profile-orders-order-header-addressInvoice, .quiqqer-order-profile-orders-order-header-addressDelivery, .quiqqer-order-profile-orders-order-header-orderId {
padding: 0;
margin-bottom: 10px;
}
.quiqqer-order-profile-orders-order-header-orderId {
margin: 0 !important;
}
.quiqqer-order-profile-orders-order-header-date > span:first-child, .quiqqer-order-profile-orders-order-header-total > span:first-child, .quiqqer-order-profile-orders-order-header-addressInvoice > span:first-child, .quiqqer-order-profile-orders-order-header-addressDelivery > span:first-child, .quiqqer-order-profile-orders-order-header-orderId > span:first-child {
padding-right: 5px;
}
/****************/
/* article list */
/****************/
.quiqqer-order-profile-orders-order-articles-article {
display: block;
padding: 3em 0;
}
.quiqqer-order-profile-orders-order-articles-image {
border-bottom: 1px dashed #ddd;
border-right: none;
float: none !important;
margin: 0 0 20px 0;
}
.quiqqer-order-profile-orders-order-articles-price {
padding-top: 10px;
}
.quiqqer-order-profile-orders-order-articles-rebuy{
display: block;
margin: 0 auto;
max-width: 340px;
width: 100%;
}
/**********/
/* footer */
/**********/
.quiqqer-order-profile-orders-order footer {
display: block;
}
.quiqqer-order-profile-orders-order footer .quiqqer-order-profile-orders-order-footer-rightWrapper .btn {
padding-left: 3px;
padding-right: 3px;
}
}
/****************/
/* Invoice list */
/****************/
.quiqqer-invoice-profile-invoices-table-invoice {
background: #fff;
}
\ No newline at end of file
...@@ -17,6 +17,11 @@ ...@@ -17,6 +17,11 @@
--bg-primary: #ddd; --bg-primary: #ddd;
--bg-secondary: #f5f5f5; --bg-secondary: #f5f5f5;
--_qui-cologne-header-height: 100px;
--_qui-template-scrollMarginTop: var(--qui-template-scrollMarginTop, var(--_qui-cologne-header-height));
--_qui-cologne-theme-border-color: var(--qui-cologne-theme-border-color, #ddd);
--_qui-cologne-theme-border-width: var(--qui-cologne-theme-border-width, 1px);
/* ecoyn / ecommerce */ /* ecoyn / ecommerce */
--_qui-order-basket-articles-image-width: var(--qui-order-basket-articles-image-width, 100px); --_qui-order-basket-articles-image-width: var(--qui-order-basket-articles-image-width, 100px);
......
...@@ -343,7 +343,7 @@ window.addEvent('domready', function () { ...@@ -343,7 +343,7 @@ window.addEvent('domready', function () {
'package/quiqqer/order/bin/frontend/controls/basket/Button' 'package/quiqqer/order/bin/frontend/controls/basket/Button'
], function (Basket) { ], function (Basket) {
new Basket({ new Basket({
open : BASKET_OPEN.toInt(), action : BASKET_ACTION,
events: { events: {
onCreate: function (Basket) { onCreate: function (Basket) {
var BasketNode = Basket.getElm(), var BasketNode = Basket.getElm(),
...@@ -364,7 +364,7 @@ window.addEvent('domready', function () { ...@@ -364,7 +364,7 @@ window.addEvent('domready', function () {
new Element('span', { new Element('span', {
'class': 'quiqqer-order-basketButton-quantity quiqqer-order-basketButton-batch-custom', 'class': 'quiqqer-order-basketButton-quantity quiqqer-order-basketButton-batch-custom',
html : '0' html : '<span class="fa fa-spinner fa-spin"></span>'
}).inject(BasketNode); }).inject(BasketNode);
if (BASKET_STYLE && BASKET_STYLE === 'full') { if (BASKET_STYLE && BASKET_STYLE === 'full') {
......
...@@ -20,7 +20,7 @@ ...@@ -20,7 +20,7 @@
"quiqqer/core": "^2", "quiqqer/core": "^2",
"quiqqer/erp": "^3", "quiqqer/erp": "^3",
"quiqqer/products": "^2", "quiqqer/products": "^2",
"quiqqer/order": "^2", "quiqqer/order": "^2.7.24",
"quiqqer/product-bricks": "^2", "quiqqer/product-bricks": "^2",
"quiqqer/frontend-users": "^2", "quiqqer/frontend-users": "^2",
"quiqqer/menu": "^3", "quiqqer/menu": "^3",
...@@ -28,7 +28,8 @@ ...@@ -28,7 +28,8 @@
"quiqqer/unsemantic": "^2", "quiqqer/unsemantic": "^2",
"quiqqer-asset/fastclick": "^1", "quiqqer-asset/fastclick": "^1",
"quiqqer/tooltips": "^2", "quiqqer/tooltips": "^2",
"quiqqer/currency": "^2" "quiqqer/currency": "^2",
"quiqqer/smarty4": "^2.0.7"
}, },
"autoload": { "autoload": {
"psr-4": { "psr-4": {
......
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<events> <events>
<event on="onSmartyInit" fire="\QUI\TemplateCologne\EventHandler::onSmartyInit"/>
<event on="onProjectConfigSave" fire="\QUI\TemplateCologne\EventHandler::onProjectConfigSave"/> <event on="onProjectConfigSave" fire="\QUI\TemplateCologne\EventHandler::onProjectConfigSave"/>
<event on="onSiteSave" fire="\QUI\TemplateCologne\EventHandler::onSiteSave"/> <event on="onSiteSave" fire="\QUI\TemplateCologne\EventHandler::onSiteSave"/>
<event on="onQuiqqer::products::product::buttons::end" <event on="onQuiqqer::products::product::buttons::end"
......
...@@ -10,16 +10,16 @@ ...@@ -10,16 +10,16 @@
{$Template->getHeader()} {$Template->getHeader()}
<script> <script>
var BASKET_STYLE = "{$basketStyle}"; const BASKET_STYLE = "{$basketStyle}";
var BASKET_OPEN = "{$basketOpen}"; const BASKET_ACTION = "{$basketAction}";
var INITAL_BASKET_PRICE = "{$initialBasketPrice}"; const INITAL_BASKET_PRICE = "{$initialBasketPrice}";
var COUNT_LANGUAGES = "{$countLanguages}"; const COUNT_LANGUAGES = "{$countLanguages}";
var SHOW_CATEGORY_MENU = "{$showCategoryMenu}"; const SHOW_CATEGORY_MENU = "{$showCategoryMenu}";
var REGISTER_URL = "{$registerSiteUrl}"; const REGISTER_URL = "{$registerSiteUrl}";
var SHOW_MENU_AFTER_SCROLL_POS = "{$showNavAfterScroll}"; // The number of pixels from top which the menu will be displayed. const SHOW_MENU_AFTER_SCROLL_POS = "{$showNavAfterScroll}"; // The number of pixels from top which the menu will be displayed.
var SHOW_MENU_SMOOTH = "{$showMenuSmooth}"; // if true menu slides from top (animation) const SHOW_MENU_SMOOTH = "{$showMenuSmooth}"; // if true menu slides from top (animation)
var SET_MENU_POS_BACK_ON_INIT = !!"{$setMenuPosBackOnInit}"; // if true menu slides from top (animation) const SET_MENU_POS_BACK_ON_INIT = !!"{$setMenuPosBackOnInit}"; // if true menu slides from top (animation)
var SCROLL_OFFSET = 80; const SCROLL_OFFSET = 80;
</script> </script>
{fetch template="template/head/styles.html" Template=$Template} {fetch template="template/head/styles.html" Template=$Template}
......
<?php <?php
/**
* cologne template file
*
* @var QUI\Projects\Project $Project
* @var QUI\Projects\Site $Site
* @var QUI\Interfaces\Template\EngineInterface $Engine
* @var QUI\Template $Template
**/
/** /**
* Emotion * Emotion
*/ */
...@@ -13,7 +22,7 @@ ...@@ -13,7 +22,7 @@
$templateSettings = QUI\TemplateCologne\Utils::getConfig([ $templateSettings = QUI\TemplateCologne\Utils::getConfig([
'Project' => $Project, 'Project' => $Project,
'Template' => $Template, 'Template' => $Template,
'Site' => $Site 'Site' => $Site
]); ]);
/** /**
...@@ -93,7 +102,7 @@ ...@@ -93,7 +102,7 @@
/* user avatar */ /* user avatar */
$Avatar = new QUI\FrontendUsers\Controls\UserIcon([ $Avatar = new QUI\FrontendUsers\Controls\UserIcon([
'showLogout' => false, // template cologne use own logout popup (see bin/javascript/init.js) 'showLogout' => false, // template cologne use own logout popup (see bin/javascript/init.js)
'User' => QUI::getUserBySession() 'User' => QUI::getUserBySession()
]); ]);
/* product page - for layouts */ /* product page - for layouts */
...@@ -134,7 +143,7 @@ ...@@ -134,7 +143,7 @@
$registerSite = $Project->getSites([ $registerSite = $Project->getSites([
'where' => [ 'where' => [
'type' => [ 'type' => [
'type' => 'IN', 'type' => 'IN',
'value' => $registerSiteTypes 'value' => $registerSiteTypes
] ]
], ],
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
{if !empty( $prefixContentBricks )} {if !empty( $prefixContentBricks )}
{foreach from=$prefixContentBricks item=Brick} {foreach from=$prefixContentBricks item=Brick}
{assign var=classes value=\QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))} {assign var=classes value=QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))}
<section <section
class="template-brick-container template-brick-contentPrefix brick-id-{$Brick->getAttribute('id')} {$classes}"> class="template-brick-container template-brick-contentPrefix brick-id-{$Brick->getAttribute('id')} {$classes}">
...@@ -63,7 +63,7 @@ ...@@ -63,7 +63,7 @@
{if !empty( $suffixContentBricks )} {if !empty( $suffixContentBricks )}
{foreach from=$suffixContentBricks item=Brick} {foreach from=$suffixContentBricks item=Brick}
{assign var=classes value=\QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))} {assign var=classes value=QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))}
<section class="template-brick-container template-brick-contentSuffix brick-id-{$Brick->getAttribute('id')} {$classes}"> <section class="template-brick-container template-brick-contentSuffix brick-id-{$Brick->getAttribute('id')} {$classes}">
<div class="template-grid-row"> <div class="template-grid-row">
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
<div class="main-no-sidebar"> <div class="main-no-sidebar">
{if !empty( $prefixContentBricks )} {if !empty( $prefixContentBricks )}
{foreach from=$prefixContentBricks item=Brick} {foreach from=$prefixContentBricks item=Brick}
{assign var=classes value=\QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))} {assign var=classes value=QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))}
<section class="template-brick-container template-brick-contentPrefix brick-id-{$Brick->getAttribute('id')} {$classes}"> <section class="template-brick-container template-brick-contentPrefix brick-id-{$Brick->getAttribute('id')} {$classes}">
<div class="template-grid-row"> <div class="template-grid-row">
...@@ -58,7 +58,7 @@ ...@@ -58,7 +58,7 @@
{if !empty( $suffixContentBricks )} {if !empty( $suffixContentBricks )}
{foreach from=$suffixContentBricks item=Brick} {foreach from=$suffixContentBricks item=Brick}
{assign var=classes value=\QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))} {assign var=classes value=QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))}
<section class="template-brick-container template-brick-contentSuffix brick-id-{$Brick->getAttribute('id')} {$classes}"> <section class="template-brick-container template-brick-contentSuffix brick-id-{$Brick->getAttribute('id')} {$classes}">
<div class="template-grid-row"> <div class="template-grid-row">
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
<div class="main-no-sidebar-thin"> <div class="main-no-sidebar-thin">
{if !empty( $prefixContentBricks )} {if !empty( $prefixContentBricks )}
{foreach from=$prefixContentBricks item=Brick} {foreach from=$prefixContentBricks item=Brick}
{assign var=classes value=\QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))} {assign var=classes value=QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))}
<section class="template-brick-container template-brick-contentPrefix brick-id-{$Brick->getAttribute('id')} {$classes}"> <section class="template-brick-container template-brick-contentPrefix brick-id-{$Brick->getAttribute('id')} {$classes}">
<div class="template-grid-row"> <div class="template-grid-row">
...@@ -58,7 +58,7 @@ ...@@ -58,7 +58,7 @@
{if !empty( $suffixContentBricks )} {if !empty( $suffixContentBricks )}
{foreach from=$suffixContentBricks item=Brick} {foreach from=$suffixContentBricks item=Brick}
{assign var=classes value=\QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))} {assign var=classes value=QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))}
<section class="template-brick-container template-brick-contentSuffix brick-id-{$Brick->getAttribute('id')} {$classes}"> <section class="template-brick-container template-brick-contentSuffix brick-id-{$Brick->getAttribute('id')} {$classes}">
<div class="template-grid-row"> <div class="template-grid-row">
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
{if !empty( $prefixContentBricks )} {if !empty( $prefixContentBricks )}
{foreach from=$prefixContentBricks item=Brick} {foreach from=$prefixContentBricks item=Brick}
{assign var=classes value=\QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))} {assign var=classes value=QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))}
<section class="template-brick-container template-brick-contentPrefix brick-id-{$Brick->getAttribute('id')} {$classes}"> <section class="template-brick-container template-brick-contentPrefix brick-id-{$Brick->getAttribute('id')} {$classes}">
<div class="template-grid-row"> <div class="template-grid-row">
...@@ -62,7 +62,7 @@ ...@@ -62,7 +62,7 @@
{if !empty( $suffixContentBricks )} {if !empty( $suffixContentBricks )}
{foreach from=$suffixContentBricks item=Brick} {foreach from=$suffixContentBricks item=Brick}
{assign var=classes value=\QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))} {assign var=classes value=QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))}
<section class="template-brick-container template-brick-contentSuffix brick-id-{$Brick->getAttribute('id')} {$classes}"> <section class="template-brick-container template-brick-contentSuffix brick-id-{$Brick->getAttribute('id')} {$classes}">
<div class="template-grid-row"> <div class="template-grid-row">
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
<div class="main-start-page"> <div class="main-start-page">
{if !empty( $prefixContentBricks )} {if !empty( $prefixContentBricks )}
{foreach from=$prefixContentBricks item=Brick} {foreach from=$prefixContentBricks item=Brick}
{assign var=classes value=\QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))} {assign var=classes value=QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))}
<section class="template-brick-container template-brick-contentPrefix brick-id-{$Brick->getAttribute('id')} {$classes}"> <section class="template-brick-container template-brick-contentPrefix brick-id-{$Brick->getAttribute('id')} {$classes}">
<div class="template-grid-row"> <div class="template-grid-row">
...@@ -59,7 +59,7 @@ ...@@ -59,7 +59,7 @@
{if !empty( $suffixContentBricks )} {if !empty( $suffixContentBricks )}
{foreach from=$suffixContentBricks item=Brick} {foreach from=$suffixContentBricks item=Brick}
{assign var=classes value=\QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))} {assign var=classes value=QUI\TemplateCologne\Utils::convertBrickCSSClass($Brick->getAttribute('classes'))}
<section class="template-brick-container template-brick-contentSuffix brick-id-{$Brick->getAttribute('id')} {$classes}"> <section class="template-brick-container template-brick-contentSuffix brick-id-{$Brick->getAttribute('id')} {$classes}">
<div class="template-grid-row"> <div class="template-grid-row">
......
...@@ -509,22 +509,26 @@ ...@@ -509,22 +509,26 @@
<en><![CDATA[If the option ist enabled, the product images are displayed in the shopping basket and order.]]></en> <en><![CDATA[If the option ist enabled, the product images are displayed in the shopping basket and order.]]></en>
</locale> </locale>
<!-- basket open --> <!-- basket action -->
<locale name="settings.shop.basketOpen"> <locale name="settings.shop.basketAction">
<de><![CDATA[Aktion bei Klick auf Warenkorb]]></de> <de><![CDATA[Aktion bei Klick auf Warenkorb-Icon]]></de>
<en><![CDATA[What should happen when the user clicks on the shopping cart?]]></en> <en><![CDATA[Shopping card action on click]]></en>
</locale> </locale>
<locale name="settings.shop.basketOpen.nothing"> <locale name="settings.shop.basketAction.desc">
<de><![CDATA[Bestellprozes nicht öffnen]]></de> <de><![CDATA[Diese Option gilt nur für Desktop Ansicht. Auf mobilen Geräten wird immer zu der Bestellseite geleitet.]]></de>
<en><![CDATA[Do not open order process]]></en> <en><![CDATA[This option only applies to desktop view. On mobile devices it will always be redirected to the order process page.]]></en>
</locale>
<locale name="settings.shop.basketAction.openSmallBasket">
<de><![CDATA[Kleinen Warenkorb öffnen]]></de>
<en><![CDATA[Open small basket]]></en>
</locale> </locale>
<locale name="settings.shop.basketOpen.window"> <locale name="settings.shop.basketAction.openOrderProcessUrl">
<de><![CDATA[Bestellprozes in einem Fenster öffnen]]></de> <de><![CDATA[Bestellseite öffnen]]></de>
<en><![CDATA[Open order process in a popup]]></en> <en><![CDATA[Open order process page]]></en>
</locale> </locale>
<locale name="settings.shop.basketOpen.page"> <locale name="settings.shop.basketAction.openOrderProcess">
<de><![CDATA[Zu Bestellprozess-Seite leiten]]></de> <de><![CDATA[Bestellung in einem Popup Fenster öffnen]]></de>
<en><![CDATA[Go to order page]]></en> <en><![CDATA[Open order process in a popup]]></en>
</locale> </locale>
<!-- hide empty fields --> <!-- hide empty fields -->
<locale name="settings.shop.hideEmptyFields"> <locale name="settings.shop.hideEmptyFields">
......