Newer
Older
require(['qui/QUI'], function (QUI) {
"use strict";
function getCouponPrice(couponId, vat) {
return new Promise(function (resolve) {
require(['Ajax'], function (QUIAjax) {
QUIAjax.get('package_quiqqer_coupons_ajax_backend_getCouponPrice', resolve, {
'package': 'quiqqer/coupons',
});
});
});
}
QUI.addEvent('quiqqerErpPriceFactorWindow', function (PriceFactorWindow) {
const Content = PriceFactorWindow.getContent();
const Buttons = Content.getElement('.quiqqer-erp-priceFactors-button');
const ArticleList = PriceFactorWindow.getArticleList();
require(['Locale'], function (QUILocale) {
new Element('button', {
'class': 'qui-button',
html: '<span class="fa fa-credit-card-alt"></span>',
title: QUILocale.get('quiqqer/coupons', 'add.coupon.priceFactor'),
styles: {
'float': 'right',
click: function (e) {
e.stop();
require([
'package/quiqqer/coupons/bin/backend/controls/Window'
], function (CouponWindow) {
new CouponWindow({
multiple: true,
onSubmit: function (Instance, value) {
if (!value.length) {
return;
}
const currency = ArticleList.getAttribute('currency');
const vat = ArticleList.getVat();
let couponData;
getCouponPrice(value[0].id, vat).then(function (result) {
couponData = result;
return PriceFactorWindow.getPriceFactorData(
couponData.price,
vat,
currency
);
}).then((data) => {
let priceFactor = {
description: couponData.title,
identifier: "",
index: ArticleList.countPriceFactors(),
nettoSum: data.nettoSum,
sum: data.sum,
sumFormatted: data.sumFormatted,
title: couponData.title,
value: data.sum,
valueText: data.valueText,
vat: vat,
visible: 1