Skip to content
Code-Schnipsel Gruppen Projekte
Commit 21a7e57e erstellt von Michael Danielczok's avatar Michael Danielczok
Dateien durchsuchen

fix: adjust order in user profile

Related: template-cologne#119
Übergeordneter 082aef60
No related branches found
No related tags found
2 Merge Requests!146fix: update `getCustomerFiles` method signature in `AbstractOrder`,!145Update 'next-3.x' with latest changes from 'main'
Pipeline #15561 bestanden mit Phase
in 2 Minuten und 34 Sekunden
......@@ -63,9 +63,10 @@ define('package/quiqqer/order/bin/frontend/controls/frontendusers/Orders', [
*/
$onImport: function () {
var self = this,
Elm = this.getElm();
Elm = this.getElm(),
SectionContainer = Elm.querySelector('[data-ref="section-container"]');
this.$List = Elm.getElement('.quiqqer-order-profile-orders-list');
this.$List = Elm.getElement('[data-ref="order-list"]');
this.$OrderContainer = new Element('div', {
'class': 'quiqqer-order-profile-orders-order-container',
......@@ -74,9 +75,16 @@ define('package/quiqqer/order/bin/frontend/controls/frontendusers/Orders', [
opacity : 0,
position: 'relative'
}
}).inject(this.getElm());
});
if (SectionContainer) {
this.$OrderContainer.inject(SectionContainer);
this.Loader.inject(SectionContainer);
} else {
this.$OrderContainer.inject(Elm);
this.Loader.inject(Elm);
}
this.Loader.inject(Elm);
this.$setEvents();
// pagination events
......@@ -179,6 +187,11 @@ define('package/quiqqer/order/bin/frontend/controls/frontendusers/Orders', [
onLoad: function () {
self.Loader.hide();
self.$hideList().then(function () {
self.$OrderContainer.scrollIntoView({
behavior: "smooth",
block: "start"
});
return self.$showOrderContainer();
});
}
......@@ -245,9 +258,7 @@ define('package/quiqqer/order/bin/frontend/controls/frontendusers/Orders', [
*/
$setEvents: function () {
var self = this;
var orderLinks = this.getElm().getElements(
'.quiqqer-order-profile-orders-order-header-orderId a'
);
var orderLinks = this.getElm().getElements('[data-ref="order-link"]');
orderLinks.addEvent('click', function (event) {
var Target = event.target;
......@@ -298,6 +309,7 @@ define('package/quiqqer/order/bin/frontend/controls/frontendusers/Orders', [
);
elements.push(self.$List);
elements.push(...this.getElm().querySelectorAll('[data-ref="order-text"]'))
return new Promise(function (resolve) {
elements.setStyle('position', 'relative');
......@@ -328,6 +340,7 @@ define('package/quiqqer/order/bin/frontend/controls/frontendusers/Orders', [
);
elements.push(self.$List);
elements.push(...this.getElm().querySelectorAll('[data-ref="order-text"]'))
elements.setStyle('display', null);
......
......@@ -357,10 +357,18 @@
<de><![CDATA[Meine Bestellungen]]></de>
<en><![CDATA[My orders]]></en>
</locale>
<locale name="control.frontendUsers.orders.title">
<de><![CDATA[Bestellungen]]></de>
<en><![CDATA[Orders]]></en>
</locale>
<locale name="profile.opened.orders.title">
<de><![CDATA[Meine offene Bestellungen]]></de>
<de><![CDATA[Meine offenen Bestellungen]]></de>
<en><![CDATA[My open orders]]></en>
</locale>
<locale name="control.frontendUsers.opened.orders.title">
<de><![CDATA[Offene Bestellungen]]></de>
<en><![CDATA[Open orders]]></en>
</locale>
<locale name="message.orders.panel.empty.articles">
<de><![CDATA[Die Bestellung besitzt keine Artikel.]]></de>
<en><![CDATA[The order does not own any articles.]]></en>
......@@ -833,6 +841,28 @@
<de><![CDATA[Vorgehen bei gescheiterter Zahlung]]></de>
<en><![CDATA[Procedure for failed payment]]></en>
</locale>
<locale name="order.settings.userProfile.title">
<de><![CDATA[Benutezrprofil]]></de>
<en><![CDATA[User profile]]></en>
</locale>
<locale name="order.settings.userProfile.showArticleImage">
<de><![CDATA[Artikelbilder anzeigen]]></de>
<en><![CDATA[Show article images]]></en>
</locale>
<locale name="order.settings.userProfile.showArticleImage.desc">
<de><![CDATA[Wenn aktiviert, werden Artikelbilder im Benutzerprofil im Bereich "Bestellungen" und "Offene Bestellungen" angezeigt.]]></de>
<en><![CDATA[When enabled, product images are displayed in the user profile's order history and open orders section.]]></en>
</locale>
<locale name="order.settings.userProfile.disableProductLinks">
<de><![CDATA[Keine Prodeuktlinks]]></de>
<en><![CDATA[Disable product links]]></en>
</locale>
<locale name="order.settings.userProfile.disableProductLinks.desc">
<de><![CDATA[Wenn aktiviert, werden keine Links zu den Produkten im Benutzerprofil angezeigt.]]></de>
<en><![CDATA[When enabled, no links to products will be displayed in the user profile.]]></en>
</locale>
<locale name="order.settings.mails.attachments">
<de><![CDATA[Automatische Mailanhänge]]></de>
<en><![CDATA[Automatic mail attachments]]></en>
......@@ -1090,10 +1120,18 @@
<de><![CDATA[Bestellstatus]]></de>
<en><![CDATA[Order status]]></en>
</locale>
<locale name="control.profile.orders.order.invoice">
<locale name="control.profile.orders.order.invoice.label">
<de><![CDATA[Rechnung]]></de>
<en><![CDATA[Invoice]]></en>
</locale>
<locale name="control.profile.orders.order.invoice">
<de><![CDATA[Rechnung herunterladen]]></de>
<en><![CDATA[Download invoice]]></en>
</locale>
<locale name="control.profile.orders.order.continuePayment.label">
<de><![CDATA[Benötigte Aktion]]></de>
<en><![CDATA[Required action]]></en>
</locale>
<locale name="control.profile.orders.order.continuePayment">
<de><![CDATA[Bezahlung fortführen]]></de>
<en><![CDATA[Continue payment]]></en>
......
......@@ -37,6 +37,17 @@
</conf>
</section>
<section name="userProfile">
<conf name="showArticleImage">
<type><![CDATA[bool]]></type>
<defaultvalue><![CDATA[1]]></defaultvalue>
</conf>
<conf name="disableProductLinks">
<type><![CDATA[bool]]></type>
<defaultvalue><![CDATA[0]]></defaultvalue>
</conf>
</section>
<section name="mails">
<!-- Datenschutz -->
<conf name="privacyPolicy">
......@@ -234,6 +245,36 @@
</input>
</settings>
<settings>
<title>
<locale group="quiqqer/order" var="order.settings.userProfile.title"/>
</title>
<input type="checkbox" conf="userProfile.showArticleImage">
<text>
<locale group="quiqqer/order"
var="order.settings.userProfile.showArticleImage"/>
</text>
<description>
<locale group="quiqqer/order"
var="order.settings.userProfile.showArticleImage.desc"
/>
</description>
</input>
<input type="checkbox" conf="userProfile.disableProductLinks">
<text>
<locale group="quiqqer/order"
var="order.settings.userProfile.disableProductLinks"/>
</text>
<description>
<locale group="quiqqer/order"
var="order.settings.userProfile.disableProductLinks.desc"
/>
</description>
</input>
</settings>
<settings>
<title>
<locale group="quiqqer/order" var="order.settings.mails.attachments"/>
......
<article class="quiqqer-order-profile-orders-order-articles-article"
data-qui="package/quiqqer/order/bin/frontend/controls/frontendusers/Article"
>
<div class="quiqqer-order-profile-orders-order-articles-image">
{if !empty($Image)}
{image image=$Image width="200" height=200}
{else}
{image image=$Project->getMedia()->getPlaceholderImage()}
{/if}
</div>
{if $showImage}
<div class="quiqqer-order-profile-orders-order-articles-image">
{if !$noLink && !empty($Product) && $Product->getUrl()}
<a href="{$Product->getUrl()}"
class="quiqqer-order-profile-orders-order-articles-image__link"
target="_blank"
>
{/if}
{if !empty($Image)}
{image image=$Image width="200" height=200}
{else}
{image image=$Project->getMedia()->getPlaceholderImage()}
{/if}
{if !$noLink && !empty($Product) && $Product->getUrl()}
</a>
{/if}
</div>
{/if}
<div class="quiqqer-order-profile-orders-order-articles-information">
{if !empty($Product)}
<a href="{$Product->getUrl()}"
class="quiqqer-order-profile-orders-order-articles-title"
target="_blank"
>
{$Article->getTitle()}
</a>
{else}
<div class="quiqqer-order-profile-orders-order-articles-title">
{$Article->getTitle()}
<div class="quiqqer-order-profile-orders-order-articles-data">
<div class="quiqqer-order-profile-orders-order-articles-information">
{if !$noLink &&!empty($Product)}
<a href="{$Product->getUrl()}"
class="quiqqer-order-profile-orders-order-articles-title"
target="_blank"
>
{$Article->getTitle()}
</a>
{else}
<div class="quiqqer-order-profile-orders-order-articles-title">
{$Article->getTitle()}
</div>
{/if}
<div class="quiqqer-order-profile-orders-order-articles-description">
{$Article->getDescription()}
</div>
</div>
{/if}
<div class="quiqqer-order-profile-orders-order-articles-description">
{$Article->getDescription()}
<div class="quiqqer-order-profile-orders-order-articles-price">
{$Article->getPrice()->getDisplayPrice()}
</div>
</div>
<div class="quiqqer-order-profile-orders-order-articles-price">
{$Article->getPrice()->getDisplayPrice()}
<div class="quiqqer-order-profile-orders-order-articles-buttons">
{if !empty($Product) && $Product->isActive()}
<noscript>
<style>
.quiqqer-order-profile-orders-order-articles-rebuy {
display: none
}
</style>
</noscript>
<button class="quiqqer-order-profile-orders-order-articles-rebuy btn btn-primary"
data-articleno="{$Article->getArticleNo()}"
disabled
>
{locale group="quiqqer/order" var="controls.UsedOrders.Article.buy_again"}
</button>
{/if}
</div>
</div>
{if !empty($Product) && $Product->isActive()}
<noscript>
<style>
.quiqqer-order-profile-orders-order-articles-rebuy {
display: none
}
</style>
</noscript>
<button class="quiqqer-order-profile-orders-order-articles-rebuy"
data-articleno="{$Article->getArticleNo()}"
disabled
>
{locale group="quiqqer/order" var="controls.UsedOrders.Article.buy_again"}
</button>
{/if}
<div class="quiqqer-order-profile-orders-order-articles-buttons"></div>
</article>
<section class="quiqqer-order-profile-orders-order">
<header>
<div class="quiqqer-order-profile-orders-order-header-date">
<span>{locale group="quiqqer/order" var="control.profile.orders.order.date"}</span>
<span>{$Order->getCreateDate()}</span>
<header class="quiqqer-order-profile-orders-order__header">
<div class="quiqqer-order-profile-orders-order__date">
<span class="quiqqer-order-profile-orders-order__label">{locale group="quiqqer/order" var="control.profile.orders.order.date"}</span>
<div class="quiqqer-order-profile-orders-order__value">{$Order->getCreateDate()}</div>
</div>
<div class="quiqqer-order-profile-orders-order-header-total">
<span>{locale group="quiqqer/order" var="control.profile.orders.order.total"}</span>
<span>{$order.calculations.display_sum}</span>
</div>
<div class="quiqqer-order-profile-orders-order-header-addressInvoice">
<span>{locale group="quiqqer/order" var="control.profile.orders.order.invoiceAddress"}</span>
{if $Invoice}
{assign var=Customer value=$Invoice->getCustomer()}
{else}
{assign var=Customer value=$Order->getCustomer()}
{/if}
{assign var=Address value=$Customer->getAddress()}
{$Address->render(['tel' => false, 'mail' => false])}
<span>
<span>{$Address->getName()}</span>
<span class="fa fa-angle-down"></span>
</span>
</div>
<div class="quiqqer-order-profile-orders-order-header-orderId">
<span>{locale group="quiqqer/order" var="control.profile.orders.order.orderNo"}</span>
<a href="{$Utils->getOrderUrl($Project, $Order)}"
target="_blank"
data-hash="{$Order->getHash()}"
title="{locale group='quiqqer/order' var='control.order.details.title'}"
>
{$Order->getPrefixedId()}
</a>
<div class="quiqqer-order-profile-orders-order__orderId">
<span class="quiqqer-order-profile-orders-order__label">{locale group="quiqqer/order" var="control.profile.orders.order.orderNo"}</span>
<div class="quiqqer-order-profile-orders-order__value">
<a href="{$Utils->getOrderUrl($Project, $Order)}"
target="_blank"
data-ref="order-link"
data-hash="{$Order->getHash()}"
title="{locale group='quiqqer/order' var='control.order.details.title'}"
>
{$Order->getPrefixedId()}
</a>
</div>
</div>
</header>
<div class="quiqqer-order-profile-orders-order-articles">
{foreach $articles as $Article}
{$this->renderArticle($Article)}
{$this->renderArticle($Article)}
{/foreach}
</div>
<footer>
<footer class="quiqqer-order-profile-orders-order__footer">
{if $Order->isPosted()}
<a href="{$Order->getAttribute('downloadLink')}" target="_blank">
<span class="fa fa-file-pdf-o"></span>
<span>{locale group="quiqqer/order" var="control.profile.orders.order.invoice"}</span>
</a>
<div class="quiqqer-order-profile-orders-order__group quiqqer-order-profile-orders-order-invoice">
<span class="quiqqer-order-profile-orders-order__label">
{locale group="quiqqer/order" var="control.profile.orders.order.invoice.label"}
</span>
<div class="quiqqer-order-profile-orders-order__value">
<a href="{$Order->getAttribute('downloadLink')}" target="_blank">
<span class="fa fa-file-pdf-o"></span>
<span>{locale group="quiqqer/order" var="control.profile.orders.order.invoice"}</span>
</a>
</div>
</div>
{else if !$Order->isSuccessful()}
<a href="{$orderUrl}" target="_blank" class="">
<span class="fa fa-shopping-basket"></span>
<span>{locale group="quiqqer/order" var="control.profile.orders.order.continuePayment"}</span>
</a>
<div class="quiqqer-order-profile-orders-order__group quiqqer-order-profile-orders-order-continuePayment">
<span class="quiqqer-order-profile-orders-order__label">
{locale group="quiqqer/order" var="control.profile.orders.order.continuePayment.label"}
</span>
<div class="quiqqer-order-profile-orders-order__value">
<a href="{$orderUrl}" target="_blank">
<span class="fa fa-shopping-basket"></span>
<span>{locale group="quiqqer/order" var="control.profile.orders.order.continuePayment"}</span>
</a>
</div>
</div>
{/if}
{if $Payment}
<div class="quiqqer-order-profile-orders-order-footer-paymentType">
<span>{locale group="quiqqer/order" var="control.profile.orders.order.paymentMethod"}:</span>
<span>{$Payment->getTitle()}</span>
<div class="quiqqer-order-profile-orders-order__group quiqqer-order-profile-orders-order-total">
<span class="quiqqer-order-profile-orders-order__label">{locale group="quiqqer/order" var="control.profile.orders.order.total"}</span>
<div class="quiqqer-order-profile-orders-order__value">{$order.calculations.display_sum}</div>
</div>
<div class="quiqqer-order-profile-orders-order__group quiqqer-order-profile-orders-order-addressInvoice">
<span class="quiqqer-order-profile-orders-order__label">{locale group="quiqqer/order" var="control.profile.orders.order.invoiceAddress"}</span>
{if $Invoice}
{assign var=Customer value=$Invoice->getCustomer()}
{else}
{assign var=Customer value=$Order->getCustomer()}
{/if}
{assign var=Address value=$Customer->getAddress()}
<div class="quiqqer-order-profile-orders-order__value">
{$Address->render(['tel' => false, 'mail' => false])}
</div>
</div>
{if $Payment}
<div class="quiqqer-order-profile-orders-order__group quiqqer-order-profile-orders-order-paymentType">
<span class="quiqqer-order-profile-orders-order__label">{locale group="quiqqer/order" var="control.profile.orders.order.paymentMethod"}:</span>
<div class="quiqqer-order-profile-orders-order__value">{$Payment->getTitle()}</div>
</div>
{/if}
{if !empty($shippingStatus)}
<div class="quiqqer-order-profile-orders-order-footer-shipping">
<span>{locale group="quiqqer/shipping" var="control.profile.orders.shipping"}:</span>
<span>{$shippingStatus}</span>
</div>
<div class="quiqqer-order-profile-orders-order__group quiqqer-order-profile-orders-order-footer-shipping">
<span class="quiqqer-order-profile-orders-order__label">{locale group="quiqqer/shipping" var="control.profile.orders.shipping"}:</span>
<div class="quiqqer-order-profile-orders-order__value">{$shippingStatus}</div>
</div>
{/if}
{if isset($orderStatus)}
<div class="quiqqer-order-profile-orders-order-footer-orderStatus">
<span>{locale group="quiqqer/order" var="control.profile.orders.order.orderStatus"}:</span>
<span>{$orderStatus}</span>
</div>
<div class="quiqqer-order-profile-orders-order__group quiqqer-order-profile-orders-order-footer-orderStatus">
<span class="quiqqer-order-profile-orders-order__label">{locale group="quiqqer/order" var="control.profile.orders.order.orderStatus"}:</span>
<div class="quiqqer-order-profile-orders-order__value">{$orderStatus}</div>
</div>
{/if}
</footer>
</section>
.quiqqer-order-profile-orders,
.quiqqer-order-profile-orders-list {
float: left;
width: 100%;
.quiqqer-frontendUsers-section--userOrders {
--_label-color: var(--label-color, #999);
--_label-fontSize: var(--label-fontSize, 0.875rem);
--_box-padding: var(--box-padding, 0.75rem);
--_box-bgColor: var(--box-bgColor, #f6f6f6);
--_borderColor: var(--borderColor, #ddd);
--_borderWidth: var(--borderWidth, 1px);
--_scrollMarginTop: var(--scrollMarginTop,var(--_qui-template-scrollMarginTop, 0px));
}
/** One Order
=============================================== */
.quiqqer-order-profile-orders-order {
border: 1px #ddd solid;
clear: both;
float: left;
margin-bottom: 10px;
width: 100%;
.quiqqer-order-profile-orders-list {
display: grid;
grid-template-columns: 1fr;
gap: 2rem;
}
.quiqqer-order-profile-orders-order header {
background: #f6f6f6;
border-bottom: 1px #ddd solid;
float: left;
padding: 10px;
width: 100%;
:where(.quiqqer-order-profile-orders-order__label) {
color: var(--_label-color);
font-size: var(--_label-fontSize);
}
.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 {
float: left;
position: relative;
width: 25%;
/* header */
:where(.quiqqer-order-profile-orders-order__header) {
background: var(--_box-bgColor);
border-bottom: var(--_borderWidth) solid var(--_borderColor);
padding: var(--_box-padding);
display: flex;
justify-content: space-between;
}
.quiqqer-order-profile-orders-order-header-date span,
.quiqqer-order-profile-orders-order-header-total span,
.quiqqer-order-profile-orders-order-header-addressInvoice span,
.quiqqer-order-profile-orders-order-header-addressDelivery span {
clear: both;
float: left;
:where(.quiqqer-order-profile-orders-order__header .quiqqer-order-profile-orders-order__orderId) {
text-align: right;
}
.quiqqer-order-profile-orders-order-header-addressInvoice {
cursor: pointer;
}
/** One Order
=============================================== */
.quiqqer-order-profile-orders-order-header-addressInvoice address {
cursor: default;
display: none;
background: #ffffff;
border: 1px #ddd solid;
left: 0;
top: 35px;
padding: 10px;
position: absolute;
width: 100%;
:where(.quiqqer-order-profile-orders-order) {
container-type: inline-size;
container-name: quiqqer-order-profile-orders-order;
border: var(--_borderWidth) solid var(--_borderColor);
min-width: 0;
}
.quiqqer-order-profile-orders-order-header-addressInvoice:is(:hover, :active) address {
display: inline-block;
/* article list */
.quiqqer-order-profile-orders-order-articles {
padding: var(--_box-padding);
display: grid;
gap: 1rem;
}
.quiqqer-order-profile-orders-order-header-addressInvoice span {
text-align: left;
/* single article */
.quiqqer-order-profile-orders-order-articles-article {
display: flex;
gap: 1rem;
min-width: 0;
}
.quiqqer-order-profile-orders-order-articles {
float: left;
padding: 10px;
width: 100%;
:where(.quiqqer-order-profile-orders-order-articles-image) {
width: calc(10rem - 0.5rem);
height: calc(10rem - 0.5rem);
background: var(--_box-bgColor);
border-radius: 0.5rem;
overflow: hidden;
display: grid;
place-content: center;
padding: var(--_box-padding);
flex-shrink: 0;
}
.quiqqer-order-profile-orders-order-articles-article {
float: left;
width: 100%;
.quiqqer-order-profile-orders-order-articles-data {
flex-grow: 1;
display: flex;
flex-direction: column;
gap: 0.5rem;
}
.quiqqer-order-profile-orders-order-articles-information {
padding-top: 10px;
:where(.quiqqer-order-profile-orders-order-articles-title) {
font-weight: bolder;
}
.quiqqer-order-profile-orders-order-articles-image {
float: left;
margin-right: 10px;
.quiqqer-order-profile-orders-order-articles-buttons {
margin-top: auto;
}
.quiqqer-order-profile-orders-order-articles-description {
margin: 5px 0;
/* footer */
:where(.quiqqer-order-profile-orders-order__footer) {
border-top: var(--_borderWidth) solid var(--_borderColor);
padding: var(--_box-padding);
display: flex;
flex-direction: column;
gap: 0.5rem;
}
.quiqqer-order-profile-orders-order-footer-paymentType {
margin-top: 10px;
:where(.quiqqer-order-profile-orders-order__group) {
display: grid;
grid-template-columns: 10rem 1fr;
gap: 0.5rem;
}
.quiqqer-order-profile-orders-order footer {
background: #f6f6f6;
border-top: 1px #ddd solid;
float: left;
padding: 10px;
width: 100%;
@container quiqqer-order-profile-orders-order (max-width: 25rem) {
.quiqqer-order-profile-orders-order-articles-article {
flex-direction: column;
}
:where(.quiqqer-order-profile-orders-order-articles-article:not(:first-child)) {
border-top: var(--_borderWidth) solid var(--_borderColor);
padding-top: 1rem;
}
:where(.quiqqer-order-profile-orders-order__group) {
display: block;
}
}
/** Pagination
=============================================== */
.quiqqer-order-profile-orders-pagination {
float: left;
width: 100%;
}
......@@ -112,56 +124,17 @@
text-align: right;
}
@media (max-width: 768px) {
.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 {
width: 100%;
}
.quiqqer-order-profile-orders-order-header-orderId {
float: left;
margin-top: 10px;
width: 100%;
}
.quiqqer-order-profile-orders-order-header-date > span,
.quiqqer-order-profile-orders-order-header-total > span,
.quiqqer-order-profile-orders-order-header-orderId > span,
.quiqqer-order-profile-orders-order-header-orderId > a,
.quiqqer-order-profile-orders-order-header-addressInvoice > span {
clear: none;
float: left;
width: 50%;
}
.quiqqer-order-profile-orders-order-header-addressInvoice address {
top: 100%;
z-index: 1;
}
.quiqqer-order-profile-orders .quiqqer-order-profile-orders-pagination:first-child {
margin-bottom: 20px;
}
.quiqqer-order-control-order-information-invoiceAddress,
.quiqqer-order-control-order-information-orderData,
.quiqqer-order-control-order-information-payment {
clear: both;
width: 100%;
}
.quiqqer-sheets-mobile {
margin-top: 2rem;
width: 100%;
}
.quiqqer-order-control-order-information-payment-icon {
margin-bottom: 10px;
max-width: 100%;
}
/* Back btn */
.quiqqer-order-control-order-backButton {
margin-top: 1rem;
}
.quiqqer-order-control-order-information-orderData-placeholder td {
font-size: 1px;
height: 2px;
display: block;
padding: 0;
margin: 0;
}
/* container for order details (open per click on order number) */
.quiqqer-order-profile-orders-order-container {
scroll-margin-top: var(--_scrollMarginTop);
}
\ No newline at end of file
{if $sheetsMax && $sheetsMax != 1}
<div class="quiqqer-order-profile-orders-pagination">
{control
control="QUI\Controls\Navigating\Pagination"
useAjax=true
Project=$Project
limit=$sheetLimit
sheets=$sheetsMax
sheet=$sheetCurrent
}
</div>
{/if}
<section class="quiqqer-frontendUsers-profile-section quiqqer-frontendUsers-section--userOrders" data-ref="section-container">
<div data-ref="order-text">
<h2>{locale group="quiqqer/order" var="control.frontendUsers.orders.title"}</h2>
</div>
<div class="quiqqer-order-profile-orders-list">
{foreach $orders as $Order}
{$this->renderOrder($Order)}
{foreachelse}
<p>{locale group="quiqqer/order" var="message.no.orders"}</p>
{/foreach}
</div>
<div class="quiqqer-order-profile-orders-list" data-ref="order-list">
{foreach $orders as $Order}
{$this->renderOrder($Order)}
{foreachelse}
<p class="text-muted">{locale group="quiqqer/order" var="message.no.orders"}</p>
{/foreach}
</div>
{if $sheetsMax && $sheetsMax != 1}
<div class="quiqqer-order-profile-orders-pagination">
{control
control="QUI\Controls\Navigating\Pagination"
useAjax=true
Project=$Project
limit=$sheetLimit
sheets=$sheetsMax
sheet=$sheetCurrent
}
</div>
{/if}
\ No newline at end of file
{if $sheetsMax && $sheetsMax != 1}
<div class="quiqqer-order-profile-orders-pagination" data-ref="pagination">
{control
control="QUI\Controls\Navigating\Pagination"
useAjax=true
Project=$Project
limit=$sheetLimit
sheets=$sheetsMax
sheet=$sheetCurrent
}
</div>
{/if}
</section>
\ No newline at end of file
......@@ -216,6 +216,9 @@ class_exists('QUI\ERP\Shipping\ShippingStatus\Status')
*/
public function renderArticle(QUI\ERP\Accounting\Article $Article): string
{
$Settings = QUI\ERP\Order\Settings::getInstance();
$showImage = $Settings->get('userProfile', 'showArticleImage');
$noLink = $Settings->get('userProfile', 'disableProductLinks');
$Engine = QUI::getTemplateManager()->getEngine();
$Product = null;
$Image = null;
......@@ -244,6 +247,8 @@ public function renderArticle(QUI\ERP\Accounting\Article $Article): string
'Article' => $Article,
'Product' => $Product,
'Image' => $Image,
'showImage' => $showImage,
'noLink' => $noLink,
'Project' => QUI::getProjectManager()->get()
]);
......
0% oder .
You are about to add 0 people to the discussion. Proceed with caution.
Bearbeitung dieser Nachricht zuerst beenden!
Bitte registrieren oder zum Kommentieren