From 60a41b5f14f70bc70f0e2b05b192aeb560de2f7f Mon Sep 17 00:00:00 2001 From: Thomas Peterson Date: Mon, 3 Nov 2025 14:33:01 +0100 Subject: [PATCH] Backup before --- dev_db/install_mongo.dump | Bin 1315441 -> 1345044 bytes dev_db/mariadb.sql | 2 +- .../PSC/Shop/EntityBundle/Document/Order.php | 160 ++++++++-- .../SettingsBundle/Service/TemplateVars.php | 202 +++++++----- .../PSC/CollectLayouter/Helper/SaveFiles.php | 8 +- .../PSC/CollectLayouter/Model/Element.php | 138 +++++---- .../PSC/Bootstrap4/Form/Field/Formulare.php | 108 ++++--- .../PSC/Bootstrap4/Form/Field/Images.php | 11 +- .../PSC/Bootstrap4/Form/Field/Sites.php | 287 +++++++++++------ .../PSC/Bootstrap4/Form/Field/Style.php | 10 +- src/old/application/data/models/Orders.php | 126 ++++---- .../templates/basket/index.phtml | 233 +++++++++----- .../default/controllers/BasketController.php | 289 +++++++++++------- .../default/controllers/SearchController.php | 92 +++--- src/old/library/TP/Basket.php | 55 +++- 15 files changed, 1127 insertions(+), 594 deletions(-) diff --git a/dev_db/install_mongo.dump b/dev_db/install_mongo.dump index eab2e008bbbd25abff6328d61f048d4f1d8eff9b..04241baa2e3be05671e24f68525593707843c50a 100644 GIT binary patch delta 18404 zcmd^H3vg7|dEOQ1fgZ3gFvd2l0R@bE#5wnU+d8qt0tO?2Brq1vI63#8b0r~ZCGTo^ zO*@ovJ4~mJW3r*QPMmm}rjNLGY^o+ZwNv9Zu}K_U$0c^$I*>ArC+*bJ)Mf&cI6?jI zKJM;HH(QCW#|RiMv)sM^-M!!U|L1@1dH2gZKKoG5Bg6js^oi!1?5EdRUFIZ|{ zY>5QYp&Q;#Kh+dXzaReh^yxq}eZ$h9I3npEFFfzuEd90Gv)S`+FZxMA@Yq8?n|QL( z@1J<4IZ^|6jM`WV*QPUd|2pwh(>(vg<)weV##S!1M34I00&oN~{h2RZ`sKU&zay!OcIn&iOfnEl!}LW>Wprot_T zEP;ziPz6hp73Ryn-$h5bZy|g{2TzXkR3F|!;4ZZM$-6@{p9jQ1Q=DwN{o=nny?rVgv z-3ebLn&feSkkN7K>wS~DH=)~bQdB}tG~SwXTw8IriAAw$F%iI!*yf{0bd6%WvhVzCNxF6c-r1s%}$ z{Xamj196^6j3)AcpK@-OJCT8x8xM?e6PS)Bcyeqsp5#$;l=0|FLB=biMru6TKRTX2 zCBv!Ti0&U8ABg4&i>`!osOK<$Amu13i-K|jQ_(ocjME_=|IMhQc*f{~Xev(k!Aoik z^OiTWAO}w%V zzWE8)yaGl0T2nQuRe}kYHG&L7;RuXPL7Jsuq!P|d#;GJz!-MLgSgeAaOLb=%)y}Fi zh3bX>99&*vUv#$iwF7QBEBmrv3x}8A?DMVmFr>9rLzjw%WiU}e78N8wSHegaxP(Ma z;?&ZpMiehYDvHG_$hqi#p$uIQLz;qa#no$08&YSxdM`#~9~tf$5O?n02!^RgiP3 zJ`%le&N?a=^w+Bfx<(DtFf4+Y#!Mucx`n8uXvoyS%&@5#s;qgeUPZB31vwY=qbo~6 z_pq(t~bxE(}QRY8)XazrWo z17@dDEb59Nc?E(+u~-E;mukC=>Z{aIx#<3&YUnb_6eN>~$PiQuNs>;G&Q%QwvLIp8 zB&H#GtzJd3SOqy3-3w*tdKl7mWj?O$Kq^ zQN3yZQV7e3Ma^`yo;wi)cp1eskO5%@l4Xe81Z+vVDtIh-GZJ%Y`o^l#^{&(i>Z+6u z?VKL2ErU}f>5!8@X0x-=L>q(T3NoT!f5lDCB@j~uVMf63v-RVo|0$&n210`!~7 zh$@-@VJ=flDhj5h=^nVvNX*4;)#_5*O4a*HaGT?f!b}}-9L3;v8SkPp=(l9hy;=P} z=B3|n74)0Qx+&>M5;O`99VpUdNd$*3i`X(CVm4F{oXpW+dkFbZkxOYU8EF*5$zZlBBvKPhLf_VPQ z8GE4=Kvk&uD+a8lR6quX!WLx)C72sB<6fagQ7l$L z&ZYW58P%meEKl{6P~$_X3kM76+Eqi>v=q%UWoWB#!)dS>8q%o_u1hc=Rnx%46yo8v ziej+}axS`WmZ9rmNK??Q7$D4TL)zcH-APBbZB>%O`0jlO6LMF7$Mkf&K=q&GqYJ?# zoPq&p7J&s%gBVUXh>kc^J1po!ngaGpN7R{!xioERDP8YMjo?bsMz28bgHN{$xILP~ zO@@j$VTOpfh(W()fXr}Ox01yKC@4Y5CV1gCBQY1ZzbeD6RK2eRx4Es~v4caFIWXr_beh(lB9AF|rU8@<6{$A|suM1`;UekWWHbg}us2GZJ%o zdbW%wFa4gf4t;3p_HaI8`g{%@s3~wtB(Q#6f})Y3Qm}qaLYBygrK=W`HLo;oMq(~H zH!du-elIPag3h(ON_Ua{0|{8AJ9_pGU?I@~T0Gv@+ciDiF7WhNjwgl4m{^blT9)O+ zD!PiOC_`*YOjS~;BxSsJ%>LHc($f>2~+NZ7SHu*bcl2?>=-F z*vD=;e$UFbrI2nHy9SfNzj*7b2PSW69{pCHG%lOaes(HR3RFfcMxjdzodX>rP(c?U zcN0Y~(qy?%y@;L@{wKH9d+c@bprS zCsly)Dh<3dL@m%c5S`|ZCQ*oDWGZnP-m<)+%^8WgJV|9ddFl5QKmDOaF$Hu^<@P+vn)%ss5H5A0(&d9O_RxRa}HyK4hP`BRz(>z;k$(c`Z?yx_?Es+HXg ztWrUdfo-ZocUd(t(hR|b89jv&(KMmw45J3qhRKU!u?li7@lX8c^K-UouQWze6*Uc9bQ`LME>)qSZRs*nu=7(GLl$801IAu4RU}J?5j_}s z^;o@%VzCNxF1qX9`9BQl`U&J7NF+CbA$1RJ+D+KzLtsd}cQjXyDmJ$Rlj|-HF1^@# zu>PfQRgG#QimEI_g@qF*W)~>T_&Bb|G_fg~1gl_89#j{_Vin|Es#lyjId>h^r99{_ zRtd3IPHDu$Q5C3uscKZq1WI0-)1Oi~fpJg+Dh3?pwG?Q=8m0s$CVSae zQ7l$L&ZT;D8P!*-qbi_#s%q$(ifF-60ms%$3BbY$ro*9q6S$h-`xC>E$7 z9ek9gXdI@3u?+D65sB($Uq!K41vwY=BmYnex`%yTKXqvnZ*=;SRO#cw=1!+CIh5>y zz6-QnN;4{#YO8uw>rm6S6iA^gXgo+FHjyF26bhA8ft#iVKZ)`xZ8KLaRzc3C`r$IF zuTn?lqT63JbQO+835y(lsVO^QfCytM28JOw#iATzMb@cT#8(uHRgiPheXk5%4@0_c z993t0%lHTw(ypzlB@9Ut7}B1;!M>~^O~Ri$z@TcF{rQ&2G8;CRSh&z1+R(GX_su`3 zyO{-Fc>E~2)B?xC47s!@q1YEM!X6txYH6@{{Gz$mKD8*a=)vC3qrIJeIBMXS2gm$O zZ)a`C@78=QoUvc7{kxF;$$fRdf3*8-EgW@l)WgvL#{xJS;b_WqpKboZ&CYHax7+`O z0^zbxX=>Q@#lRi*+H>ExA8CoSW{x}&x^I>J{5M05izfsBlixYxl)H0=U_bM0=!U2! zfW=Z%)@4zJUmqEeWe`<`Bty{%hv>-O{&eWQ>|K^j2HwrzK#k z4T)=t3ctzIMHn6gmBox192;`>HY<*njLQ4b*Ri?Pw?Qr5%YNWV_(sqYgWvg?s-R#~ zmf&U_G~MJ_rwU`LZrY2!9qL~4QBc)+V|2{flY_wP0POMcbl6_>ROnV)IUNeGAkF}z z$q5Ww!yW-NG5(2o!dDL*8f*kMR>DX`o!#?Gq(S$p~LpaUkUwQbQnH0zqQD^hx5R^R(u#K2aJkg5FDCZ*wPIu zK=&1%#)3U72>i&N!Tuo*Ft^!(=R)&WLrw?d;V`ctDwfk|f!!^1$oe2$G2ky#IJ0Cs z_&1>!?PD#G)pqb)DAMq#{MYD9KiYls*P6rqb&fiqtgdCg{EOz#{PK7(98G_(xh0c1 zA9}CFKJ?$AC7F{y4fO=lKVBBKN8b)L+mF|U>l$v{-1q)no6qmFL4{lGC)&bInX`4_ zudG>d2=FTGo>I`Dm$HutMEVqaMPqnXJuwXES7@0#ZVdlc{o=`Bfmp@8P|aNkd!@kU zD4Goye$;+!Rk$JZt7!PCy5MARWgfm)0?xiJ_4adX!mahwFGp*`eRZW@%EkSA?q_Ma z&ypllfjYYLrAWOkTxwbEJXf%xea-8=Ll@4p+qaT%s~tZdT9CQ#Txk6~`y(WLTjp2m z!`z<nT6ZtKkbFK>Rx ze)nR_8hcrNq$%@h628gr(6G|^|MKi6HpdQISYp(_uH9Z((Ct delta 694 zcmX|+Ze#b$9QKZbZ~AHN&-tj6#Uqhajwk6aqs;tk+P89^5sp&{ZO# zVyaVWV68&fw>O%CUGzbU6gO0;ly*@_h#>Q$kB9Z6xf}HG8#sqE|MNd{=0-=wV(;;5 zXBbm-*d3xChRGa@dvxPArWQ8uNwB959ftZyCfn+pW`DADSO`*?b)f_sQ}tVZ$!ffk z7myh+8=W;$J_#9LDaFQ^ijXntwIMd@)nT=jDs0@IG%ni|Bt+L)%BRD@FtxF7uFqym z_Q;w@m)0~><@(K}@x+<+@9qUvQ`ir8(pcNjm(O!zc!v`@-r*8?P?|b?>DSOhSTE7? zphVSN?V;LCfmL7=$O46jYVGAsII8inr2Vzlt}NLF4uMnP61WAbz{8a#@25>*323@0 zN8~Hji>1Nb!3Y-}CRboCiuE?X)aJLm^k)2ioHS#Nz>c;yj#d zqB&SUY89UpDFxtRkA63Y0D%lR|f4CW`Z*yN5W^5`3bHbmqfs z6z7^rublO4XJF>HYo6CPQ7?iI5u)=wy`&DA({AJa4Rkw7`-Q;*$<2M!crSwYjWm~w z?LXg-B)HQ;1AHJs>Q722BZGhZNg^)(_7HthBy01-g=Zg!s?9~@gV1uoYLJrudQ`4! zSXhhI7EHtD7|!G3t3?oRy+}JPAoi)VxYNVGH&Z}-vXS0HAkG5lZx#}!QHX|VB~*uL JAsh+QioZ-T5RCu; diff --git a/dev_db/mariadb.sql b/dev_db/mariadb.sql index 1ba9415a9..afed87890 100644 --- a/dev_db/mariadb.sql +++ b/dev_db/mariadb.sql @@ -933,7 +933,7 @@ CREATE TABLE `contact_address` ( `email` varchar(255) DEFAULT NULL, `type` int(1) NOT NULL, `company` varchar(100) DEFAULT NULL, - `anrede` varchar(100) NOT NULL, + `anrede` varchar(100) DEFAULT 1, `country` varchar(100) DEFAULT NULL, `fax` varchar(255) DEFAULT NULL, `company2` varchar(255) DEFAULT NULL, diff --git a/src/new/src/PSC/Shop/EntityBundle/Document/Order.php b/src/new/src/PSC/Shop/EntityBundle/Document/Order.php index 7b990330b..5e89b53f5 100755 --- a/src/new/src/PSC/Shop/EntityBundle/Document/Order.php +++ b/src/new/src/PSC/Shop/EntityBundle/Document/Order.php @@ -2,10 +2,10 @@ namespace PSC\Shop\EntityBundle\Document; -use Doctrine\ODM\MongoDB\Mapping\Annotations\Field; -use Doctrine\ODM\MongoDB\Mapping\Annotations\Id; use Doctrine\ODM\MongoDB\Mapping\Annotations\Document; use Doctrine\ODM\MongoDB\Mapping\Annotations\EmbedOne; +use Doctrine\ODM\MongoDB\Mapping\Annotations\Field; +use Doctrine\ODM\MongoDB\Mapping\Annotations\Id; use PSC\Shop\EntityBundle\Document\Embed\Operator; #[Document] @@ -18,7 +18,7 @@ class Order protected $uid; #[Field(type: 'string')] - protected ?string $notices = ""; + protected null|string $notices = ''; #[Field(type: 'bool')] protected $packageExported; @@ -30,17 +30,23 @@ class Order protected $draft = false; #[Field(type: 'raw')] - protected string $vouchers = ""; + protected string $vouchers = ''; #[Field(type: 'raw')] - protected string $discounts = ""; + protected string $discounts = ''; + #[Field(type: 'collection')] + protected $voucherProduct = []; + #[Field(type: 'collection')] + protected $voucherPayment = []; + #[Field(type: 'collection')] + protected $voucherShipping = []; /** * @return bool */ public function isSendDataToShipping(): bool { - return (bool)$this->sendDataToShipping; + return (bool) $this->sendDataToShipping; } /** @@ -50,22 +56,23 @@ class Order { $this->sendDataToShipping = $sendDataToShipping; } + /** - * @var string $externalOrderNumber; - */ + * @var string $externalOrderNumber; + */ #[Field(type: 'string')] protected $externalOrderNumber; /** - * @var string $paymentRef; - */ + * @var string $paymentRef; + */ #[Field(type: 'string')] protected $paymentRef; #[Field(type: 'string')] protected $paymentGateway; /** - * @var string $paymentToken; - */ + * @var string $paymentToken; + */ #[Field(type: 'string')] protected $paymentToken; #[Field(type: 'hash')] @@ -79,15 +86,16 @@ class Order #[EmbedOne] protected $senderAddressSaved; #[EmbedOne] - protected ?Operator $operator = null; + protected null|Operator $operator = null; #[EmbedOne] protected $contactSaved; /** - * @var boolean $withTax - */ + * @var boolean $withTax + */ #[Field(type: 'bool')] protected $withTax; + /** * @return string */ @@ -191,16 +199,16 @@ class Order */ public function setPluginSettingModule($module, $key, $value) { - $this->pluginSettings[$module ] [$key] = $value; + $this->pluginSettings[$module][$key] = $value; } public function getPluginSettingModule($module, $key) { - if (!isset($this->pluginSettings[$module ]) || !isset($this->pluginSettings[$module ] [$key])) { + if (!isset($this->pluginSettings[$module]) || !isset($this->pluginSettings[$module][$key])) { return null; } - return $this->pluginSettings[$module ] [$key]; + return $this->pluginSettings[$module][$key]; } /** @@ -272,7 +280,7 @@ class Order */ public function getExternalOrderNumber(): string { - return (string)$this->externalOrderNumber; + return (string) $this->externalOrderNumber; } /** @@ -286,25 +294,25 @@ class Order /** * @return ?float */ - public function getGutscheinAbzugNetto(): ?float + public function getGutscheinAbzugNetto(): null|float { - return (float)$this->gutscheinAbzugNetto; + return (float) $this->gutscheinAbzugNetto; } /** * @param ?float $gutscheinAbzugNetto */ - public function setGutscheinAbzugNetto(?float $gutscheinAbzugNetto): void + public function setGutscheinAbzugNetto(null|float $gutscheinAbzugNetto): void { $this->gutscheinAbzugNetto = $gutscheinAbzugNetto; } - public function getNotices(): ?string + public function getNotices(): null|string { return $this->notices; } - public function setNotices(?string $notices): void + public function setNotices(null|string $notices): void { $this->notices = $notices; } @@ -340,27 +348,127 @@ class Order { $this->paymentGateway = $paymentGateway; } + public function setDiscounts(string $discounts): void { $this->discounts = $discounts; } + public function getDiscounts(): string { return $this->discounts; } + public function setVouchers(string $vouchers): void { $this->vouchers = $vouchers; } + public function getVouchers(): string { return $this->vouchers; } - public function setOperator(?Operator $operator): void + + public function setVoucherProduct(array $var): void + { + $this->voucherProduct = $var; + } + + public function getVoucherProduct(): array + { + return (array) $this->voucherProduct; + } + + public function setVoucherPayment(array $var): void + { + $this->voucherPayment = $var; + } + + public function getVoucherPayment(): array + { + return (array) $this->voucherPayment; + } + + public function setVoucherShipping(array $var): void + { + $this->voucherShipping = $var; + } + + public function getVoucherShipping(): array + { + return (array) $this->voucherShipping; + } + + public function getOverallSumNetto(): float + { + $alleArrays = array_merge($this->voucherProduct, $this->voucherPayment, $this->voucherShipping); + $netto = 0; + foreach ($alleArrays as $item) { + $netto += $item['netto']; + } + + return $netto; + } + + public function getOverallSumSteuer(): float + { + $alleArrays = array_merge($this->voucherProduct, $this->voucherPayment, $this->voucherShipping); + $netto = 0; + foreach ($alleArrays as $item) { + $netto += $item['steuer']; + } + + return $netto; + } + + public function getOverallSumBrutto(): float + { + $alleArrays = array_merge($this->voucherProduct, $this->voucherPayment, $this->voucherShipping); + $netto = 0; + foreach ($alleArrays as $item) { + $netto += $item['brutto']; + } + + return $netto; + } + + public function getVoucherSum(): array + { + $alleArrays = array_merge($this->voucherProduct, $this->voucherPayment, $this->voucherShipping); + + // Summen nach Prozentsatz gruppieren + $summen = []; + + foreach ($alleArrays as $item) { + $prozent = $item['prozent']; + + if (!isset($summen[$prozent])) { + $summen[$prozent] = [ + 'brutto' => 0, + 'netto' => 0, + 'prozent' => $prozent, + 'steuer' => 0, + 'rabatt' => 0, + ]; + } + + $summen[$prozent]['brutto'] += $item['brutto']; + $summen[$prozent]['netto'] += $item['netto']; + $summen[$prozent]['steuer'] += $item['steuer']; + $summen[$prozent]['rabatt'] += $item['rabatt']; + } + + // Umwandeln in numerisch indiziertes Array (optional) + $summen = array_values($summen); + return $summen; + } + + public function setOperator(null|Operator $operator): void { $this->operator = $operator; } - public function getOperator(): ?Operator + + public function getOperator(): null|Operator { return $this->operator; } diff --git a/src/new/src/PSC/System/SettingsBundle/Service/TemplateVars.php b/src/new/src/PSC/System/SettingsBundle/Service/TemplateVars.php index 5d214e117..343165d12 100755 --- a/src/new/src/PSC/System/SettingsBundle/Service/TemplateVars.php +++ b/src/new/src/PSC/System/SettingsBundle/Service/TemplateVars.php @@ -65,10 +65,17 @@ class TemplateVars protected Base $orderModel; - protected $twigVars = array(); + protected $twigVars = []; - public function __construct($projectDir, EntityManagerInterface $em, TokenStorageInterface $tokenStorage, DocumentManager $mongoManager, Environment $twig, PaperDB $paperDb, Order $orderService) - { + public function __construct( + $projectDir, + EntityManagerInterface $em, + TokenStorageInterface $tokenStorage, + DocumentManager $mongoManager, + Environment $twig, + PaperDB $paperDb, + Order $orderService, + ) { $this->entityManager = $em; $this->tokenStorage = $tokenStorage; $this->mongoManager = $mongoManager; @@ -78,17 +85,15 @@ class TemplateVars $this->orderService = $orderService; } - public function loadOrder($uuid) { - if ($this->loaded && $this->order->getUuid() == $uuid) { return true; } $orderRepo = $this->entityManager->getRepository('PSC\Shop\EntityBundle\Entity\Order'); - $this->order = $orderRepo->findOneBy(array('uuid' => $uuid)); + $this->order = $orderRepo->findOneBy(['uuid' => $uuid]); $this->positions = $this->order->getPositions(); $this->orderModel = $this->orderService->getOrderByUuid($uuid); $this->generateTwigVars(); @@ -100,18 +105,17 @@ class TemplateVars private function generateTwigVars() { - /** @var \PSC\Shop\EntityBundle\Document\Order $orderObj */ $orderObj = $this->mongoManager ->getRepository('PSC\Shop\EntityBundle\Document\Order') - ->findOneBy(array('uid' => (string) $this->order->getUid())); + ->findOneBy(['uid' => (string) $this->order->getUid()]); $contact = $this->order->getContact(); /** @var \PSC\Shop\EntityBundle\Document\Contact $contactObj */ $contactObj = $this->mongoManager ->getRepository('PSC\Shop\EntityBundle\Document\Contact') - ->findOneBy(array('uid' => (string) $contact->getId())); + ->findOneBy(['uid' => (string) $contact->getId()]); $invoiceAddress = null; $deliveryAddress = null; $senderAddress = null; @@ -135,36 +139,41 @@ class TemplateVars $shipping = $this->order->getShippingType(); $payment = $this->order->getPaymentType(); - $positions = array(); + $positions = []; - $mwert = array(); + $mwert = []; /** @var Orderpos $pos */ foreach ($this->positions as $pos) { - /** @var Position $objDoc */ - $objDoc = $this->mongoManager - ->getRepository(Position::class) - ->findOneBy(['uid' => (string)$pos->getId()]); + $objDoc = $this->mongoManager->getRepository(Position::class)->findOneBy(['uid' => (string) $pos->getId()]); /** @var \TP_Basket_Item $objPosition */ - $objPosition = unserialize(($pos->getData())); + $objPosition = unserialize($pos->getData()); $paperContainer = new PaperContainer(); $paperContainer->parse(simplexml_load_string($shop->getInstall()->getPaperContainer())); /** @var \PSC\Shop\EntityBundle\Document\Product $productDoc */ $productDoc = $this->mongoManager ->getRepository('PSC\Shop\EntityBundle\Document\Product') - ->findOneBy(array('uid' => (string) $pos->getProduct()->getUid())); + ->findOneBy(['uid' => (string) $pos->getProduct()->getUid()]); if (isset($mwert[$pos->getProduct()->getMwert()])) { - $mwert[$pos->getProduct()->getMwert()] = ['netto' => $pos->getPriceAllNetto() + $mwert[$pos->getProduct()->getMwert()]['netto'], 'brutto' => $pos->getPriceAllBrutto() + $mwert[$pos->getProduct()->getMwert()]['brutto'], 'steuer' => $pos->getPriceAllSteuer() + $mwert[$pos->getProduct()->getMwert()]['steuer']]; + $mwert[$pos->getProduct()->getMwert()] = [ + 'netto' => $pos->getPriceAllNetto() + $mwert[$pos->getProduct()->getMwert()]['netto'], + 'brutto' => $pos->getPriceAllBrutto() + $mwert[$pos->getProduct()->getMwert()]['brutto'], + 'steuer' => $pos->getPriceAllSteuer() + $mwert[$pos->getProduct()->getMwert()]['steuer'], + ]; } else { - $mwert[$pos->getProduct()->getMwert()] = ['netto' => $pos->getPriceAllNetto(), 'brutto' => $pos->getPriceAllBrutto(), 'steuer' => $pos->getPriceAllSteuer()]; + $mwert[$pos->getProduct()->getMwert()] = [ + 'netto' => $pos->getPriceAllNetto(), + 'brutto' => $pos->getPriceAllBrutto(), + 'steuer' => $pos->getPriceAllSteuer(), + ]; } - if (trim($pos->getProduct()->getScaledPrice()) != "") { - $tmp = array( + if (trim($pos->getProduct()->getScaledPrice()) != '') { + $tmp = [ 'pos' => $pos->getPos(), 'count' => $objPosition->getOptions()['auflage'], 'product' => $pos->getProduct(), @@ -174,8 +183,8 @@ class TemplateVars 'objDoc' => $objDoc, 'engine' => false, 'calc' => false, - 'set' => false - ); + 'set' => false, + ]; } elseif ($pos->hasCalcXml()) { $engine = new Engine(); $engine->setPaperRepository($this->paperDb); @@ -200,7 +209,7 @@ class TemplateVars if (isset($objPosition->getOptions()['kalk_artikel'])) { $engine->setActiveArticle($objPosition->getOptions()['kalk_artikel']); } - if ($objPosition->getXmlProduct() != "") { + if ($objPosition->getXmlProduct() != '') { $engine->setActiveArticle($objPosition->getXmlProduct()); } $engine->calc(); @@ -214,7 +223,7 @@ class TemplateVars $count = $auflage->getRawValue(); } - $tmp = array( + $tmp = [ 'pos' => $pos->getPos(), 'count' => $count, 'product' => $pos->getProduct(), @@ -225,10 +234,9 @@ class TemplateVars 'engine' => $engine, 'set' => false, 'rabatte' => $tmpDiscounts, - ); - + ]; } else { - $tmp = array( + $tmp = [ 'pos' => $pos->getPos(), 'count' => $pos->getCount(), 'product' => $pos->getProduct(), @@ -238,8 +246,8 @@ class TemplateVars 'objDoc' => $objDoc, 'engine' => false, 'calc' => false, - 'set' => false - ); + 'set' => false, + ]; } $setConfig = $pos->getProduct()->getSetConfig(); @@ -254,7 +262,7 @@ class TemplateVars } if (count($setConfig) > 0) { - $productSets = array(); + $productSets = []; foreach ($setConfig as $conf) { /** @var Product $product */ $product = $productRepo->findOneBy(['uid' => $conf->article_id]); @@ -288,16 +296,17 @@ class TemplateVars $tmp['set'] = $productSets; } - if ($objDoc && $objDoc->getLayouterId() != "") { + if ($objDoc && $objDoc->getLayouterId() != '') { /** @var Layoutdesigndata $layoutData */ $layoutData = $this->entityManager - ->getRepository('PSC\Shop\EntityBundle\Entity\Layoutdesigndata')->findOneBy(array('uuid' => $objDoc->getLayouterId())); + ->getRepository('PSC\Shop\EntityBundle\Entity\Layoutdesigndata') + ->findOneBy(['uuid' => $objDoc->getLayouterId()]); if ($layoutData) { $config = $layoutData->getDesign(); if (isset($config['products'])) { - $productSets = array(); + $productSets = []; foreach ($config['products'] as $art) { if (isset($art['uid'])) { @@ -331,7 +340,6 @@ class TemplateVars } } - $tmp['set'] = $productSets; } } @@ -343,24 +351,65 @@ class TemplateVars /** @var \PSC\Shop\EntityBundle\Document\Shop $shop */ $shopDoc = $this->mongoManager ->getRepository('PSC\Shop\EntityBundle\Document\Shop') - ->findOneBy(array('uid' => (string) $shop->getUid())); + ->findOneBy(['uid' => (string) $shop->getUid()]); if ($this->order->getZahlKosten() != 0) { if (isset($mwert[$payment->getTaxClass()])) { - $mwert[$payment->getTaxClass()] = ['netto' => $mwert[$payment->getTaxClass()]['netto'] + $this->order->getZahlKosten(), 'brutto' => $mwert[$payment->getTaxClass()]['brutto'] + $this->order->getZahlKosten() + ($this->order->getZahlKosten() / 100 * $payment->getTaxClass()) , 'steuer' => $mwert[$payment->getTaxClass()]['steuer'] + ($this->order->getZahlKosten() / 100 * $payment->getTaxClass())]; + $mwert[$payment->getTaxClass()] = [ + 'netto' => $mwert[$payment->getTaxClass()]['netto'] + $this->order->getZahlKosten(), + 'brutto' => + + $mwert[$payment->getTaxClass()]['brutto'] + + $this->order->getZahlKosten() + + (($this->order->getZahlKosten() / 100) * $payment->getTaxClass()) + , + 'steuer' => + + $mwert[$payment->getTaxClass()]['steuer'] + + (($this->order->getZahlKosten() / 100) * $payment->getTaxClass()) + , + ]; } else { - $mwert[$payment->getTaxClass()] = ['netto' => $this->order->getZahlKosten(), 'brutto' => $this->order->getZahlKosten() + ($this->order->getZahlKosten() / 100 * $payment->getTaxClass()), 'steuer' => $this->order->getZahlKosten() / 100 * $payment->getTaxClass()]; + $mwert[$payment->getTaxClass()] = [ + 'netto' => $this->order->getZahlKosten(), + 'brutto' => + + $this->order->getZahlKosten() + + (($this->order->getZahlKosten() / 100) * $payment->getTaxClass()) + , + 'steuer' => ($this->order->getZahlKosten() / 100) * $payment->getTaxClass(), + ]; } } if ($this->order->getVersandKosten() != 0) { if (isset($mwert[$shipping->getTaxClass()])) { - $mwert[$shipping->getTaxClass()] = ['netto' => $mwert[$shipping->getTaxClass()]['netto'] + $this->order->getVersandKosten(), 'brutto' => $mwert[$shipping->getTaxClass()]['brutto'] + $this->order->getVersandKosten() + ($this->order->getVersandKosten() / 100 * $payment->getTaxClass()), 'steuer' => $mwert[$shipping->getTaxClass()]['steuer'] + ($this->order->getVersandKosten() / 100 * $payment->getTaxClass())]; + $mwert[$shipping->getTaxClass()] = [ + 'netto' => $mwert[$shipping->getTaxClass()]['netto'] + $this->order->getVersandKosten(), + 'brutto' => + + $mwert[$shipping->getTaxClass()]['brutto'] + + $this->order->getVersandKosten() + + (($this->order->getVersandKosten() / 100) * $payment->getTaxClass()) + , + 'steuer' => + + $mwert[$shipping->getTaxClass()]['steuer'] + + (($this->order->getVersandKosten() / 100) * $payment->getTaxClass()) + , + ]; } else { - $mwert[$shipping->getTaxClass()] = ['netto' => $this->order->getVersandKosten(), 'brutto' => $this->order->getVersandKosten() + ($this->order->getVersandKosten() / 100 * $payment->getTaxClass()), 'steuer' => $this->order->getVersandKosten() / 100 * $payment->getTaxClass()]; + $mwert[$shipping->getTaxClass()] = [ + 'netto' => $this->order->getVersandKosten(), + 'brutto' => + + $this->order->getVersandKosten() + + (($this->order->getVersandKosten() / 100) * $payment->getTaxClass()) + , + 'steuer' => ($this->order->getVersandKosten() / 100) * $payment->getTaxClass(), + ]; } } - - $this->twigVars = array( + $this->twigVars = [ 'contact' => $contact, 'contactDoc' => $contactObj, 'account' => $contact->getAccount(), @@ -376,8 +425,8 @@ class TemplateVars 'orderObj' => $orderObj, 'orderDoc' => $orderObj, 'positions' => $positions, - 'orderModel' => $this->orderModel - ); + 'orderModel' => $this->orderModel, + ]; } /** @@ -397,21 +446,33 @@ class TemplateVars public static function getHelp() { - return [[ - \PSC\Shop\QueueBundle\Help\Shop::getColumn(), - \PSC\Shop\QueueBundle\Help\Contact::getColumn(), - \PSC\Shop\QueueBundle\Help\Payment::getColumn(), - \PSC\Shop\QueueBundle\Help\Shipping::getColumn() - ], [ - \PSC\Shop\QueueBundle\Help\Address::getColumn('invoiceAddress.', 'Rechnungsadresse'), - \PSC\Shop\QueueBundle\Help\Address::getColumn('deliveryAddress.', 'Lieferadresse'), - \PSC\Shop\QueueBundle\Help\Address::getColumn('senderAddress.', 'Absenderadresse'), - \PSC\Shop\QueueBundle\Help\Position::getColumn(), - ]]; + return [ + [ + \PSC\Shop\QueueBundle\Help\Shop::getColumn(), + \PSC\Shop\QueueBundle\Help\Contact::getColumn(), + \PSC\Shop\QueueBundle\Help\Payment::getColumn(), + \PSC\Shop\QueueBundle\Help\Shipping::getColumn(), + ], + [ + \PSC\Shop\QueueBundle\Help\Address::getColumn('invoiceAddress.', 'Rechnungsadresse'), + \PSC\Shop\QueueBundle\Help\Address::getColumn('deliveryAddress.', 'Lieferadresse'), + \PSC\Shop\QueueBundle\Help\Address::getColumn('senderAddress.', 'Absenderadresse'), + \PSC\Shop\QueueBundle\Help\Position::getColumn(), + ], + ]; } - public function getProductTwigVars(Product $product, Contact $contact, $count, $options, $additionalInfos, $netto, $steuer, $brutto, $xmlProduct = "") - { + public function getProductTwigVars( + Product $product, + Contact $contact, + $count, + $options, + $additionalInfos, + $netto, + $steuer, + $brutto, + $xmlProduct = '', + ) { $shop = $product->getShop(); $account = new Account(); @@ -422,13 +483,12 @@ class TemplateVars /** @var \PSC\Shop\EntityBundle\Document\Product $productDoc */ $productDoc = $this->mongoManager ->getRepository('PSC\Shop\EntityBundle\Document\Product') - ->findOneBy(array('uid' => (string) $product->getUid())); + ->findOneBy(['uid' => (string) $product->getUid()]); /** @var \PSC\Shop\EntityBundle\Document\Contact $contactObj */ $contactObj = $this->mongoManager ->getRepository('PSC\Shop\EntityBundle\Document\Contact') - ->findOneBy(array('uid' => (string) $contact->getId())); - + ->findOneBy(['uid' => (string) $contact->getId()]); $anonym = true; if ($contact->getUid() != null) { @@ -439,8 +499,8 @@ class TemplateVars $anonym = false; } - if ($product->getScaledPrice() != "") { - $tmp = array( + if ($product->getScaledPrice() != '') { + $tmp = [ 'count' => $options['auflage'], 'product' => $product, 'productObj' => $productDoc, @@ -450,7 +510,7 @@ class TemplateVars 'netto' => $netto, 'steuer' => $steuer, 'brutto' => $brutto, - ); + ]; } elseif ($product->hasCalcXml() && $product->getType() == 6) { $paperContainer = new PaperContainer(); $paperContainer->parse(simplexml_load_string($shop->getInstall()->getPaperContainer())); @@ -470,14 +530,14 @@ class TemplateVars if (isset($options['kalk_artikel'])) { $engine->setActiveArticle($options['kalk_artikel']); } - if ($xmlProduct != "") { + if ($xmlProduct != '') { $engine->setActiveArticle($xmlProduct); } $articleCalc = $engine->getArticle(); - $tmp = array( - 'count' => (isset($options['auflage'])) ? $options['auflage'] : $count, + $tmp = [ + 'count' => isset($options['auflage']) ? $options['auflage'] : $count, 'product' => $product, 'productObj' => $productDoc, 'calc' => $articleCalc, @@ -486,9 +546,9 @@ class TemplateVars 'netto' => $engine->getPrice(), 'steuer' => $engine->getTaxPrice(), 'brutto' => $engine->getPrice() + $engine->getTaxPrice(), - ); + ]; } else { - $tmp = array( + $tmp = [ 'count' => $count, 'product' => $product, 'productObj' => $productDoc, @@ -498,13 +558,13 @@ class TemplateVars 'netto' => $netto, 'steuer' => $steuer, 'brutto' => $brutto, - 'additionalInfos' => $additionalInfos - ); + 'additionalInfos' => $additionalInfos, + ]; } /** @var \PSC\Shop\EntityBundle\Document\Shop $shop */ $shopDoc = $this->mongoManager ->getRepository('PSC\Shop\EntityBundle\Document\Shop') - ->findOneBy(array('uid' => (string) $shop->getUid())); + ->findOneBy(['uid' => (string) $shop->getUid()]); return [ 'contact' => $contact, diff --git a/src/new/var/plugins/Custom/PSC/CollectLayouter/Helper/SaveFiles.php b/src/new/var/plugins/Custom/PSC/CollectLayouter/Helper/SaveFiles.php index 2054d6747..ed70640d4 100755 --- a/src/new/var/plugins/Custom/PSC/CollectLayouter/Helper/SaveFiles.php +++ b/src/new/var/plugins/Custom/PSC/CollectLayouter/Helper/SaveFiles.php @@ -140,8 +140,12 @@ class SaveFiles if ($elm = $this->data->getElement($element, $this->contact)) { if ($element->getType() == ElementType::Image && $elm['value'] != '') { $media = $this->mediaManager->getModelByUuid($elm['value']); - $elmMedia = $media->getVariant($element->getImage()->aspectRatio); - $formData[$element->getId()] = ['value' => $elmMedia, 'enable' => (bool) $elm['enable']]; + if ($element->getImage()->aspectRatio == null) { + $formData[$element->getId()] = ['value' => $media, 'enable' => (bool) $elm['enable']]; + } else { + $elmMedia = $media->getVariant($element->getImage()->aspectRatio); + $formData[$element->getId()] = ['value' => $elmMedia, 'enable' => (bool) $elm['enable']]; + } } else { $formData[$element->getId()] = ['value' => $elm['value'], 'enable' => $elm['enable']]; } diff --git a/src/new/var/plugins/Custom/PSC/CollectLayouter/Model/Element.php b/src/new/var/plugins/Custom/PSC/CollectLayouter/Model/Element.php index 8e03bca10..a54246c2b 100755 --- a/src/new/var/plugins/Custom/PSC/CollectLayouter/Model/Element.php +++ b/src/new/var/plugins/Custom/PSC/CollectLayouter/Model/Element.php @@ -6,24 +6,24 @@ use PSC\Shop\MediaBundle\Model\Media; class Element { - private ?ElementBinding $binding = null; - private ?ElementType $type = null; - private ?string $label = ""; - private ?bool $optional = false; - private ?bool $optionalDefault = true; - private ?string $default1 = ""; - private ?string $default2 = ""; - private ?string $default3 = ""; - private ?string $default4 = ""; - private ?bool $saveBack = false; - private ?bool $required = false; - private ?bool $list = false; - private ?string $id = ""; + private null|ElementBinding $binding = null; + private null|ElementType $type = null; + private null|string $label = ''; + private null|bool $optional = false; + private null|bool $optionalDefault = true; + private null|string $default1 = ''; + private null|string $default2 = ''; + private null|string $default3 = ''; + private null|string $default4 = ''; + private null|bool $saveBack = false; + private null|bool $required = false; + private null|bool $list = false; + private null|string $id = ''; - private ?int $pos = 1; + private null|int $pos = 1; - private ?Phone $phone = null; - private ?Image $image = null; + private null|Phone $phone = null; + private null|Image $image = null; public function __construct() { @@ -33,166 +33,168 @@ class Element $this->type = ElementType::eMail; } - public function getLabel(): ?string + public function getLabel(): null|string { return $this->label; } - public function setLabel(?string $label): void + public function setLabel(null|string $label): void { $this->label = $label; } - public function getOptional(): ?bool + public function getOptional(): null|bool { return $this->optional; } - public function setOptional(?bool $optional): void + public function setOptional(null|bool $optional): void { $this->optional = $optional; } public function getDefault1(): string { - return (string)$this->default1; + return (string) $this->default1; } - public function setDefault1(?string $default1): void + public function setDefault1(null|string $default1): void { $this->default1 = $default1; } - public function getSaveBack(): ?bool + public function getSaveBack(): null|bool { return $this->saveBack; } - public function setSaveBack(?bool $saveBack): void + public function setSaveBack(null|bool $saveBack): void { $this->saveBack = $saveBack; } - public function getBinding(): ?ElementBinding + public function getBinding(): null|ElementBinding { return $this->binding; } - public function setBinding(?ElementBinding $binding): void + public function setBinding(null|ElementBinding $binding): void { $this->binding = $binding; } - public function getType(): ?ElementType + public function getType(): null|ElementType { return $this->type; } - public function setType(?ElementType $type): void + public function setType(null|ElementType $type): void { $this->type = $type; } - public function getId(): ?string + public function getId(): null|string { return $this->id; } - public function setId(?string $id): void + public function setId(null|string $id): void { $this->id = $id; } - public function getOptionalDefault(): ?bool + public function getOptionalDefault(): null|bool { return $this->optionalDefault; } - public function setOptionalDefault(?bool $optionalDefault): void + public function setOptionalDefault(null|bool $optionalDefault): void { $this->optionalDefault = $optionalDefault; } public function getDefault2(): string { - return (string)$this->default2; + return (string) $this->default2; } - public function setDefault2(?string $default2): void + public function setDefault2(null|string $default2): void { $this->default2 = $default2; } public function getDefault3(): string { - return (string)$this->default3; + return (string) $this->default3; } - public function setDefault3(?string $default3): void + public function setDefault3(null|string $default3): void { $this->default3 = $default3; } public function getDefault4(): string { - return (string)$this->default4; + return (string) $this->default4; } - public function setDefault4(?string $default4): void + public function setDefault4(null|string $default4): void { $this->default4 = $default4; } public function getDefaultForType(): null|string|array { - return match($this->type) { - + return match ($this->type) { default => $this->default1, ElementType::eMail, ElementType::Text, ElementType::Image => $this->default1, ElementType::Phone => [$this->default1, $this->default2, $this->default3, $this->default4], ElementType::StreetHouseNumber, ElementType::ZipCity => [$this->default1, $this->default2], - }; } public function getDefaultForTypePreview(): null|string|array { - return match($this->type) { + return match ($this->type) { default => $this->default1, ElementType::eMail, ElementType::Text, ElementType::Image => $this->default1, - ElementType::Phone => ['areacode' => $this->default1, 'prefix' => $this->default2, 'number' => $this->default3, 'appendix' => $this->default4], + ElementType::Phone => [ + 'areacode' => $this->default1, + 'prefix' => $this->default2, + 'number' => $this->default3, + 'appendix' => $this->default4, + ], ElementType::StreetHouseNumber => ['street' => $this->default1, 'houseNumber' => $this->default2], ElementType::ZipCity => ['zip' => $this->default1, 'city' => $this->default2], - }; } - public function getRequired(): ?bool + public function getRequired(): null|bool { return $this->required; } - public function setRequired(?bool $required): void + public function setRequired(null|bool $required): void { $this->required = $required; } - public function getImage(): ?Image + public function getImage(): null|Image { return $this->image; } - public function setImage(?Image $image): void + public function setImage(null|Image $image): void { $this->image = $image; } - public function getPhone(): ?Phone + public function getPhone(): null|Phone { return $this->phone; } - public function setPhone(?Phone $phone): void + public function setPhone(null|Phone $phone): void { $this->phone = $phone; } @@ -202,62 +204,64 @@ class Element if ($this->type === ElementType::Image && $value != null && $value instanceof Media) { $this->setDefault1($value->getUuid()); $this->image->url = $value->getUrl(); - $this->image->variantUrl = $value->getVariant($this->image->aspectRatio)->getUrl(); + if ($this->image->aspectRatio != null) { + $this->image->variantUrl = $value->getVariant($this->image->aspectRatio)->getUrl(); + } else { + } + $this->image->title = $value->getTitle(); return; } if ($this->type === ElementType::Phone) { if (isset($value[0]) && !$this->phone->fixAreaCode) { - $this->setDefault1((string)$value[0]); + $this->setDefault1((string) $value[0]); } if (isset($value[1]) && !$this->phone->fixPrefix) { - $this->setDefault2((string)$value[1]); + $this->setDefault2((string) $value[1]); } if (isset($value[2]) && !$this->phone->fixNumber) { - $this->setDefault3((string)$value[2]); + $this->setDefault3((string) $value[2]); } if (isset($value[3]) && !$this->phone->fixAppendix) { - $this->setDefault4((string)$value[3]); + $this->setDefault4((string) $value[3]); } return; } if (is_array($value)) { if (isset($value[0])) { - $this->setDefault1((string)$value[0]); + $this->setDefault1((string) $value[0]); } if (isset($value[1])) { - $this->setDefault2((string)$value[1]); + $this->setDefault2((string) $value[1]); } if (isset($value[2])) { - $this->setDefault3((string)$value[2]); + $this->setDefault3((string) $value[2]); } if (isset($value[3])) { - $this->setDefault4((string)$value[3]); + $this->setDefault4((string) $value[3]); } } else { - $this->setDefault1((string)$value); + $this->setDefault1((string) $value); } } - public function getPos(): ?int + public function getPos(): null|int { - return (int)$this->pos; + return (int) $this->pos; } - public function setPos(?int $pos): void + public function setPos(null|int $pos): void { $this->pos = $pos; } - public function getList(): ?bool + public function getList(): null|bool { return $this->list; } - public function setList(?bool $list): void + public function setList(null|bool $list): void { $this->list = $list; } - - } diff --git a/src/new/var/plugins/System/PSC/Bootstrap4/Form/Field/Formulare.php b/src/new/var/plugins/System/PSC/Bootstrap4/Form/Field/Formulare.php index 4fd9eeebc..0478a7ac4 100755 --- a/src/new/var/plugins/System/PSC/Bootstrap4/Form/Field/Formulare.php +++ b/src/new/var/plugins/System/PSC/Bootstrap4/Form/Field/Formulare.php @@ -91,31 +91,47 @@ class Formulare extends AbstractController implements Field '/data/www/old/application/design/vorlagen/' . $shopEntity->getLayout() . '/config/user/registercontact.ini'; - $handleregister = fopen($filenameregister, 'r'); - $txtregister = fread($handleregister, filesize($filenameregister)); - fclose($handleregister); + if (file_exists($filenameregister)) { + $handleregister = fopen($filenameregister, 'r'); + $txtregister = fread($handleregister, filesize($filenameregister)); + fclose($handleregister); + } else { + $txtregister = ''; + } $filenamepass = '/data/www/old/application/design/vorlagen/' . $shopEntity->getLayout() . '/config/user/resetpassword.ini'; - $handlepass = fopen($filenamepass, 'r'); - $txtpass = fread($handlepass, filesize($filenamepass)); - fclose($handlepass); + if (file_exists($filenamepass)) { + $handlepass = fopen($filenamepass, 'r'); + $txtpass = fread($handlepass, filesize($filenamepass)); + fclose($handlepass); + } else { + $txtpass = ''; + } $filenameaddress = '/data/www/old/application/design/vorlagen/' . $shopEntity->getLayout() . '/config/user/updatecontact.ini'; - $handleaddress = fopen($filenameaddress, 'r'); - $txtaddress = fread($handleaddress, filesize($filenameaddress)); - fclose($handleaddress); + if (file_exists($filenameaddress)) { + $handleaddress = fopen($filenameaddress, 'r'); + $txtaddress = fread($handleaddress, filesize($filenameaddress)); + fclose($handleaddress); + } else { + $txtaddress = ''; + } $filenameaddaddress = '/data/www/old/application/design/vorlagen/' . $shopEntity->getLayout() . '/config/user/address.ini'; - $handleaddaddress = fopen($filenameaddaddress, 'r'); - $txtaddaddress = fread($handleaddaddress, filesize($filenameaddaddress)); - fclose($handleaddaddress); + if (file_exists($filenameaddaddress)) { + $handleaddaddress = fopen($filenameaddaddress, 'r'); + $txtaddaddress = fread($handleaddaddress, filesize($filenameaddaddress)); + fclose($handleaddaddress); + } else { + $txtaddaddress = ''; + } } $builder @@ -210,54 +226,74 @@ class Formulare extends AbstractController implements Field '/data/www/old/application/design/vorlagen/' . $_POST['settings']['bootstrap4General']['layout'] . '/config/user/login.ini'; - $handlelogin = fopen($filenamelogin, 'w'); - \fwrite($handlelogin, $event->getForm()->get('bootstrap4Formulare')->get('formularelogin')->getData()); - fclose($handlelogin); + if (is_dir(dirname($filenamelogin))) { + $handlelogin = @fopen($filenamelogin, 'w'); + if ($handlelogin !== false) { + \fwrite($handlelogin, $event->getForm()->get('bootstrap4Formulare')->get('formularelogin')->getData()); + fclose($handlelogin); + } + } } if ($event->getForm()->get('bootstrap4Formulare')->get('formulareregisteredit')->getData() == '1') { $filenameregister = '/data/www/old/application/design/vorlagen/' . $_POST['settings']['bootstrap4General']['layout'] . '/config/user/registercontact.ini'; - $handleregister = fopen($filenameregister, 'w'); - \fwrite( - $handleregister, - $event->getForm()->get('bootstrap4Formulare')->get('formulareregister')->getData(), - ); - fclose($handleregister); + if (is_dir(dirname($filenameregister))) { + $handleregister = @fopen($filenameregister, 'w'); + if ($handleregister !== false) { + \fwrite( + $handleregister, + $event->getForm()->get('bootstrap4Formulare')->get('formulareregister')->getData(), + ); + fclose($handleregister); + } + } } if ($event->getForm()->get('bootstrap4Formulare')->get('formularepassedit')->getData() == '1') { $filenamepass = '/data/www/old/application/design/vorlagen/' . $_POST['settings']['bootstrap4General']['layout'] . '/config/user/resetpassword.ini'; - $handlepass = fopen($filenamepass, 'w'); - \fwrite($handlepass, $event->getForm()->get('bootstrap4Formulare')->get('formularepass')->getData()); - fclose($handlepass); + if (is_dir(dirname($filenamepass))) { + $handlepass = @fopen($filenamepass, 'w'); + if ($handlepass !== false) { + \fwrite($handlepass, $event->getForm()->get('bootstrap4Formulare')->get('formularepass')->getData()); + fclose($handlepass); + } + } } if ($event->getForm()->get('bootstrap4Formulare')->get('formulareaddressedit')->getData() == '1') { $filenameaddress = '/data/www/old/application/design/vorlagen/' . $_POST['settings']['bootstrap4General']['layout'] . '/config/user/updatecontact.ini'; - $handleaddress = fopen($filenameaddress, 'w'); - \fwrite( - $handleaddress, - $event->getForm()->get('bootstrap4Formulare')->get('formulareaddress')->getData(), - ); - fclose($handleaddress); + if (is_dir(dirname($filenameaddress))) { + $handleaddress = @fopen($filenameaddress, 'w'); + if ($handleaddress !== false) { + \fwrite( + $handleaddress, + $event->getForm()->get('bootstrap4Formulare')->get('formulareaddress')->getData(), + ); + fclose($handleaddress); + } + } } if ($event->getForm()->get('bootstrap4Formulare')->get('formulareaddaddressedit')->getData() == '1') { $filenameaddaddress = '/data/www/old/application/design/vorlagen/' . $_POST['settings']['bootstrap4General']['layout'] . '/config/user/address.ini'; - $handleaddaddress = fopen($filenameaddaddress, 'w'); - \fwrite( - $handleaddaddress, - $event->getForm()->get('bootstrap4Formulare')->get('formulareaddaddress')->getData(), - ); - fclose($handleaddaddress); + if (is_dir(dirname($filenameaddaddress))) { + $handleaddaddress = @fopen($filenameaddaddress, 'w'); + if ($handleaddaddress !== false) { + \fwrite( + $handleaddaddress, + $event->getForm()->get('bootstrap4Formulare')->get('formulareaddaddress')->getData(), + ); + fclose($handleaddaddress); + } + } } } $shopEntity->setDisplayArticleCount( diff --git a/src/new/var/plugins/System/PSC/Bootstrap4/Form/Field/Images.php b/src/new/var/plugins/System/PSC/Bootstrap4/Form/Field/Images.php index 5fba2b655..2a03c9835 100755 --- a/src/new/var/plugins/System/PSC/Bootstrap4/Form/Field/Images.php +++ b/src/new/var/plugins/System/PSC/Bootstrap4/Form/Field/Images.php @@ -146,9 +146,13 @@ class Images extends AbstractController implements Field '/data/www/old/application/design/vorlagen/' . $_POST['settings']['bootstrap4General']['layout'] . '/config/images.ini'; - $handle = fopen($filename, 'w'); - \fwrite($handle, $event->getForm()->get('bootstrap4Images')->get('imagesini')->getData()); - fclose($handle); + if (is_dir(dirname($filename))) { + $handle = fopen($filename, 'w'); + if ($handle !== false) { + \fwrite($handle, $event->getForm()->get('bootstrap4Images')->get('imagesini')->getData()); + fclose($handle); + } + } } } $shopEntity->setDisplayArticleCount( @@ -179,4 +183,3 @@ class Images extends AbstractController implements Field { } } - diff --git a/src/new/var/plugins/System/PSC/Bootstrap4/Form/Field/Sites.php b/src/new/var/plugins/System/PSC/Bootstrap4/Form/Field/Sites.php index c2443f7ba..f71394f2d 100755 --- a/src/new/var/plugins/System/PSC/Bootstrap4/Form/Field/Sites.php +++ b/src/new/var/plugins/System/PSC/Bootstrap4/Form/Field/Sites.php @@ -66,81 +66,124 @@ if(isset($_POST["settings"]["bootstrap4Images"]["layout"])) { } else { //copy("/data/www/old/public/styles/vorlagen/" . $shopEntity->getLayout() . "/bootstrap/css/style.css","/data/www/old/public/styles/vorlagen/" . $shopEntity->getLayout() . "/bootstrap/css/style_bakup.css"); $filenamedefault = "/data/www/old/application/design/vorlagen/" . $shopEntity->getLayout() . "/layout/default.phtml"; - $handledefault = fopen($filenamedefault, 'r'); - $txtdefault = fread($handledefault, filesize($filenamedefault)); - fclose($handledefault); + $txtdefault = ''; + if (file_exists($filenamedefault)) { + $handledefault = fopen($filenamedefault, 'r'); + $txtdefault = fread($handledefault, filesize($filenamedefault)); + fclose($handledefault); + } $filenamehauptmenu = "/data/www/old/application/design/vorlagen/" . $shopEntity->getLayout() . "/layout/_hauptmenu.phtml"; - $handlehauptmenu = fopen($filenamehauptmenu, 'r'); - $txthauptmenu = fread($handlehauptmenu, filesize($filenamehauptmenu)); - fclose($handlehauptmenu); - + $txthauptmenu = ''; + if (file_exists($filenamehauptmenu)) { + $handlehauptmenu = fopen($filenamehauptmenu, 'r'); + $txthauptmenu = fread($handlehauptmenu, filesize($filenamehauptmenu)); + fclose($handlehauptmenu); + } + $filenamebasketindex = "/data/www/old/application/design/vorlagen/" . $shopEntity->getLayout() . "/templates/basket/index.phtml"; - $handlebasketindex = fopen($filenamebasketindex, 'r'); - $txtbasketindex = fread($handlebasketindex, filesize($filenamebasketindex)); - fclose($handlebasketindex); + $txtbasketindex = ''; + if (file_exists($filenamebasketindex)) { + $handlebasketindex = fopen($filenamebasketindex, 'r'); + $txtbasketindex = fread($handlebasketindex, filesize($filenamebasketindex)); + fclose($handlebasketindex); + } $filenamereview = "/data/www/old/application/design/vorlagen/" . $shopEntity->getLayout() . "/templates/basket/review.phtml"; - $handlereview = fopen($filenamereview, 'r'); - $txtreview = fread($handlereview, filesize($filenamereview)); - fclose($handlereview); + $txtreview = ''; + if (file_exists($filenamereview)) { + $handlereview = fopen($filenamereview, 'r'); + $txtreview = fread($handlereview, filesize($filenamereview)); + fclose($handlereview); + } $filenamefinish = "/data/www/old/application/design/vorlagen/" . $shopEntity->getLayout() . "/templates/basket/finish.phtml"; - $handlefinish = fopen($filenamefinish, 'r'); - $txtfinish = fread($handlefinish, filesize($filenamefinish)); - fclose($handlefinish); + $txtfinish = ''; + if (file_exists($filenamefinish)) { + $handlefinish = fopen($filenamefinish, 'r'); + $txtfinish = fread($handlefinish, filesize($filenamefinish)); + fclose($handlefinish); + } $filenamedone = "/data/www/old/application/design/vorlagen/" . $shopEntity->getLayout() . "/templates/basket/done.phtml"; - $handledone = fopen($filenamedone, 'r'); - $txtdone = fread($handledone, filesize($filenamedone)); - fclose($handledone); + $txtdone = ''; + if (file_exists($filenamedone)) { + $handledone = fopen($filenamedone, 'r'); + $txtdone = fread($handledone, filesize($filenamedone)); + fclose($handledone); + } $filenamewarehouse = "/data/www/old/application/design/vorlagen/" . $shopEntity->getLayout() . "/articletemplates/scripts/2_basket_index.phtml"; - $handlewarehouse = fopen($filenamewarehouse, 'r'); - $txtwarehouse = fread($handlewarehouse, filesize($filenamewarehouse)); - fclose($handlewarehouse); + $txtwarehouse = ''; + if (file_exists($filenamewarehouse)) { + $handlewarehouse = fopen($filenamewarehouse, 'r'); + $txtwarehouse = fread($handlewarehouse, filesize($filenamewarehouse)); + fclose($handlewarehouse); + } $filenamekalkproducts = "/data/www/old/application/design/vorlagen/" . $shopEntity->getLayout() . "/articletemplates/scripts/6_basket_index.phtml"; - $handlekalkproducts = fopen($filenamekalkproducts, 'r'); - $txtkalkproducts = fread($handlekalkproducts, filesize($filenamekalkproducts)); - fclose($handlekalkproducts); + $txtkalkproducts = ''; + if (file_exists($filenamekalkproducts)) { + $handlekalkproducts = fopen($filenamekalkproducts, 'r'); + $txtkalkproducts = fread($handlekalkproducts, filesize($filenamekalkproducts)); + fclose($handlekalkproducts); + } $filenamelogin= "/data/www/old/application/design/vorlagen/" . $shopEntity->getLayout() . "/templates/user/login.phtml"; - $handlelogin = fopen($filenamelogin, 'r'); - $txtlogin = fread($handlelogin, filesize($filenamelogin)); - fclose($handlelogin); - + $txtlogin = ''; + if (file_exists($filenamelogin)) { + $handlelogin = fopen($filenamelogin, 'r'); + $txtlogin = fread($handlelogin, filesize($filenamelogin)); + fclose($handlelogin); + } + $filenameregister= "/data/www/old/application/design/vorlagen/" . $shopEntity->getLayout() . "/templates/user/register.phtml"; - $handleregister = fopen($filenameregister, 'r'); - $txtregister = fread($handleregister, filesize($filenameregister)); - fclose($handleregister); + $txtregister = ''; + if (file_exists($filenameregister)) { + $handleregister = fopen($filenameregister, 'r'); + $txtregister = fread($handleregister, filesize($filenameregister)); + fclose($handleregister); + } $filenamemyoverview= "/data/www/old/application/design/vorlagen/" . $shopEntity->getLayout() . "/templates/user/myoverview.phtml"; - $handlemyoverview = fopen($filenamemyoverview, 'r'); - $txtmyoverview = fread($handlemyoverview, filesize($filenamemyoverview)); - fclose($handlemyoverview); + $txtmyoverview = ''; + if (file_exists($filenamemyoverview)) { + $handlemyoverview = fopen($filenamemyoverview, 'r'); + $txtmyoverview = fread($handlemyoverview, filesize($filenamemyoverview)); + fclose($handlemyoverview); + } $filenamewarehousedetails = "/data/www/old/application/design/vorlagen/" . $shopEntity->getLayout() . "/articletemplates/scripts/2.phtml"; - $handlewarehousedetails = fopen($filenamewarehousedetails, 'r'); - $txtwarehousedetails = fread($handlewarehousedetails, filesize($filenamewarehousedetails)); - fclose($handlewarehousedetails); + $txtwarehousedetails = ''; + if (file_exists($filenamewarehousedetails)) { + $handlewarehousedetails = fopen($filenamewarehousedetails, 'r'); + $txtwarehousedetails = fread($handlewarehousedetails, filesize($filenamewarehousedetails)); + fclose($handlewarehousedetails); + } $filenamekalkproductsdetails = "/data/www/old/application/design/vorlagen/" . $shopEntity->getLayout() . "/articletemplates/scripts/6.phtml"; - $handlekalkproductsdetails = fopen($filenamekalkproductsdetails, 'r'); - $txtkalkproductsdetails = fread($handlekalkproductsdetails, filesize($filenamekalkproductsdetails)); - fclose($handlekalkproductsdetails); + $txtkalkproductsdetails = ''; + if (file_exists($filenamekalkproductsdetails)) { + $handlekalkproductsdetails = fopen($filenamekalkproductsdetails, 'r'); + $txtkalkproductsdetails = fread($handlekalkproductsdetails, filesize($filenamekalkproductsdetails)); + fclose($handlekalkproductsdetails); + } $filenamesaxoprintdetails = "/data/www/old/application/design/vorlagen/" . $shopEntity->getLayout() . "/articletemplates/scripts/100.phtml"; + $txtsaxoprintdetails = ''; if (file_exists($filenamesaxoprintdetails)) { - $handlesaxoprintdetails = fopen($filenamesaxoprintdetails, 'r'); - $txtsaxoprintdetails = fread($handlesaxoprintdetails, filesize($filenamesaxoprintdetails)); - fclose($handlesaxoprintdetails); + $handlesaxoprintdetails = fopen($filenamesaxoprintdetails, 'r'); + $txtsaxoprintdetails = fread($handlesaxoprintdetails, filesize($filenamesaxoprintdetails)); + fclose($handlesaxoprintdetails); } $filenamecmsindex= "/data/www/old/application/design/vorlagen/" . $shopEntity->getLayout() . "/templates/cms/index.phtml"; - $handlecmsindex = fopen($filenamecmsindex, 'r'); - $txtcmsindex = fread($handlecmsindex, filesize($filenamecmsindex)); - fclose($handlecmsindex); + $txtcmsindex = ''; + if (file_exists($filenamecmsindex)) { + $handlecmsindex = fopen($filenamecmsindex, 'r'); + $txtcmsindex = fread($handlecmsindex, filesize($filenamecmsindex)); + fclose($handlecmsindex); + } } $builder @@ -291,96 +334,154 @@ if(isset($_POST["settings"]["bootstrap4Images"]["layout"])) { if($event->getForm()->get('bootstrap4Style')->get('write')->getData() == "1") { if($event->getForm()->get('bootstrap4Sites')->get('defaultedit')->getData() == "1") { $filenamedefault = "/data/www/old/application/design/vorlagen/" . $_POST["settings"]["bootstrap4General"]["layout"] . "/layout/default.phtml"; - $handledefault = fopen($filenamedefault, 'w'); - fputs($handledefault, $event->getForm()->get('bootstrap4Sites')->get('default')->getData()); - fclose($handledefault); + if (is_dir(dirname($filenamedefault))) { + $handledefault = @fopen($filenamedefault, 'w'); + if ($handledefault !== false) { + fputs($handledefault, $event->getForm()->get('bootstrap4Sites')->get('default')->getData()); + fclose($handledefault); + } + } } if($event->getForm()->get('bootstrap4Sites')->get('hauptmenuedit')->getData() == "1") { $filenamehauptmenu = "/data/www/old/application/design/vorlagen/" . $_POST["settings"]["bootstrap4General"]["layout"] . "/layout/_hauptmenu.phtml"; - $handlehauptmenu = fopen($filenamehauptmenu, 'w'); - fputs($handlehauptmenu, $event->getForm()->get('bootstrap4Sites')->get('hauptmenu')->getData()); - fclose($handlehauptmenu); + if (is_dir(dirname($filenamehauptmenu))) { + $handlehauptmenu = @fopen($filenamehauptmenu, 'w'); + if ($handlehauptmenu !== false) { + fputs($handlehauptmenu, $event->getForm()->get('bootstrap4Sites')->get('hauptmenu')->getData()); + fclose($handlehauptmenu); + } + } } if($event->getForm()->get('bootstrap4Sites')->get('basketindexedit')->getData() == "1") { $filenamebasketindex = "/data/www/old/application/design/vorlagen/" . $_POST["settings"]["bootstrap4General"]["layout"] . "/templates/basket/index.phtml"; - $handlebasketindex = fopen($filenamebasketindex, 'w'); - fputs($handlebasketindex, $event->getForm()->get('bootstrap4Sites')->get('basketindex')->getData()); - fclose($handlebasketindex); + if (is_dir(dirname($filenamebasketindex))) { + $handlebasketindex = @fopen($filenamebasketindex, 'w'); + if ($handlebasketindex !== false) { + fputs($handlebasketindex, $event->getForm()->get('bootstrap4Sites')->get('basketindex')->getData()); + fclose($handlebasketindex); + } + } } if($event->getForm()->get('bootstrap4Sites')->get('basketreviewedit')->getData() == "1") { $filenamereview = "/data/www/old/application/design/vorlagen/" . $_POST["settings"]["bootstrap4General"]["layout"] . "/templates/basket/review.phtml"; - $handlereview = fopen($filenamereview, 'w'); - fputs($handlereview, $event->getForm()->get('bootstrap4Sites')->get('basketreview')->getData()); - fclose($handlereview); + if (is_dir(dirname($filenamereview))) { + $handlereview = @fopen($filenamereview, 'w'); + if ($handlereview !== false) { + fputs($handlereview, $event->getForm()->get('bootstrap4Sites')->get('basketreview')->getData()); + fclose($handlereview); + } + } } if($event->getForm()->get('bootstrap4Sites')->get('basketfinishedit')->getData() == "1") { $filenamefinish = "/data/www/old/application/design/vorlagen/" . $_POST["settings"]["bootstrap4General"]["layout"] . "/templates/basket/finish.phtml"; - $handlefinish = fopen($filenamefinish, 'w'); - fputs($handlefinish, $event->getForm()->get('bootstrap4Sites')->get('basketfinish')->getData()); - fclose($handlefinish); + if (is_dir(dirname($filenamefinish))) { + $handlefinish = @fopen($filenamefinish, 'w'); + if ($handlefinish !== false) { + fputs($handlefinish, $event->getForm()->get('bootstrap4Sites')->get('basketfinish')->getData()); + fclose($handlefinish); + } + } } if($event->getForm()->get('bootstrap4Sites')->get('basketdoneedit')->getData() == "1") { $filenamedone = "/data/www/old/application/design/vorlagen/" . $_POST["settings"]["bootstrap4General"]["layout"] . "/templates/basket/done.phtml"; - $handledone = fopen($filenamedone, 'w'); - fputs($handledone, $event->getForm()->get('bootstrap4Sites')->get('basketdone')->getData()); - fclose($handledone); + if (is_dir(dirname($filenamedone))) { + $handledone = @fopen($filenamedone, 'w'); + if ($handledone !== false) { + fputs($handledone, $event->getForm()->get('bootstrap4Sites')->get('basketdone')->getData()); + fclose($handledone); + } + } } if($event->getForm()->get('bootstrap4Sites')->get('warehouseedit')->getData() == "1") { $filenamedone = "/data/www/old/application/design/vorlagen/" . $_POST["settings"]["bootstrap4General"]["layout"] . "/articletemplates/scripts/2_basket_index.phtml"; - $handledone = fopen($filenamedone, 'w'); - fputs($handledone, $event->getForm()->get('bootstrap4Sites')->get('warehouse')->getData()); - fclose($handledone); + if (is_dir(dirname($filenamedone))) { + $handledone = @fopen($filenamedone, 'w'); + if ($handledone !== false) { + fputs($handledone, $event->getForm()->get('bootstrap4Sites')->get('warehouse')->getData()); + fclose($handledone); + } + } } if($event->getForm()->get('bootstrap4Sites')->get('kalkproductsedit')->getData() == "1") { $filenamedone = "/data/www/old/application/design/vorlagen/" . $_POST["settings"]["bootstrap4General"]["layout"] . "/articletemplates/scripts/6_basket_index.phtml"; - $handledone = fopen($filenamedone, 'w'); - fputs($handledone, $event->getForm()->get('bootstrap4Sites')->get('kalkproducts')->getData()); - fclose($handledone); + if (is_dir(dirname($filenamedone))) { + $handledone = @fopen($filenamedone, 'w'); + if ($handledone !== false) { + fputs($handledone, $event->getForm()->get('bootstrap4Sites')->get('kalkproducts')->getData()); + fclose($handledone); + } + } } if($event->getForm()->get('bootstrap4Sites')->get('userloginedit')->getData() == "1") { $filenamedone = "/data/www/old/application/design/vorlagen/" . $_POST["settings"]["bootstrap4General"]["layout"] . "/templates/user/login.phtml"; - $handledone = fopen($filenamedone, 'w'); - fputs($handledone, $event->getForm()->get('bootstrap4Sites')->get('userlogin')->getData()); - fclose($handledone); + if (is_dir(dirname($filenamedone))) { + $handledone = @fopen($filenamedone, 'w'); + if ($handledone !== false) { + fputs($handledone, $event->getForm()->get('bootstrap4Sites')->get('userlogin')->getData()); + fclose($handledone); + } + } } if($event->getForm()->get('bootstrap4Sites')->get('userregisteredit')->getData() == "1") { $filenameregister = "/data/www/old/application/design/vorlagen/" . $_POST["settings"]["bootstrap4General"]["layout"] . "/templates/user/register.phtml"; - $handleregister = fopen($filenameregister, 'w'); - fputs($handleregister, $event->getForm()->get('bootstrap4Sites')->get('userregister')->getData()); - fclose($handleregister); + if (is_dir(dirname($filenameregister))) { + $handleregister = @fopen($filenameregister, 'w'); + if ($handleregister !== false) { + fputs($handleregister, $event->getForm()->get('bootstrap4Sites')->get('userregister')->getData()); + fclose($handleregister); + } + } } if($event->getForm()->get('bootstrap4Sites')->get('usermyoverviewedit')->getData() == "1") { $filenamemyoverview = "/data/www/old/application/design/vorlagen/" . $_POST["settings"]["bootstrap4General"]["layout"] . "/templates/user/myoverview.phtml"; - $handlemyoverview = fopen($filenamemyoverview, 'w'); - fputs($handlemyoverview, $event->getForm()->get('bootstrap4Sites')->get('usermyoverview')->getData()); - fclose($handlemyoverview); + if (is_dir(dirname($filenamemyoverview))) { + $handlemyoverview = @fopen($filenamemyoverview, 'w'); + if ($handlemyoverview !== false) { + fputs($handlemyoverview, $event->getForm()->get('bootstrap4Sites')->get('usermyoverview')->getData()); + fclose($handlemyoverview); + } + } } if($event->getForm()->get('bootstrap4Sites')->get('warehousedetailsedit')->getData() == "1") { $filenamedone = "/data/www/old/application/design/vorlagen/" . $_POST["settings"]["bootstrap4General"]["layout"] . "/articletemplates/scripts/2.phtml"; - $handledone = fopen($filenamedone, 'w'); - fputs($handledone, $event->getForm()->get('bootstrap4Sites')->get('warehousedetails')->getData()); - fclose($handledone); + if (is_dir(dirname($filenamedone))) { + $handledone = @fopen($filenamedone, 'w'); + if ($handledone !== false) { + fputs($handledone, $event->getForm()->get('bootstrap4Sites')->get('warehousedetails')->getData()); + fclose($handledone); + } + } } if($event->getForm()->get('bootstrap4Sites')->get('kalkproductsdetailsedit')->getData() == "1") { $filenamedone = "/data/www/old/application/design/vorlagen/" . $_POST["settings"]["bootstrap4General"]["layout"] . "/articletemplates/scripts/6.phtml"; - $handledone = fopen($filenamedone, 'w'); - fputs($handledone, $event->getForm()->get('bootstrap4Sites')->get('kalkproductsdetails')->getData()); - fclose($handledone); + if (is_dir(dirname($filenamedone))) { + $handledone = @fopen($filenamedone, 'w'); + if ($handledone !== false) { + fputs($handledone, $event->getForm()->get('bootstrap4Sites')->get('kalkproductsdetails')->getData()); + fclose($handledone); + } + } } $filenamesaxoprintdetails = "/data/www/old/application/design/vorlagen/" . $shopEntity->getLayout() . "/articletemplates/scripts/100.phtml"; - if (file_exists($filenamesaxoprintdetails)) { + if (is_dir(dirname($filenamesaxoprintdetails))) { if($event->getForm()->get('bootstrap4Sites')->get('saxoprintdetailsedit')->getData() == "1") { $filenamedone = "/data/www/old/application/design/vorlagen/" . $_POST["settings"]["bootstrap4General"]["layout"] . "/articletemplates/scripts/100.phtml"; - $handledone = fopen($filenamedone, 'w'); - fputs($handledone, $event->getForm()->get('bootstrap4Sites')->get('saxoprintdetails')->getData()); - fclose($handledone); + $handledone = @fopen($filenamedone, 'w'); + if ($handledone !== false) { + fputs($handledone, $event->getForm()->get('bootstrap4Sites')->get('saxoprintdetails')->getData()); + fclose($handledone); + } } } if($event->getForm()->get('bootstrap4Sites')->get('cmsindexedit')->getData() == "1") { $filenamecmsindex = "/data/www/old/application/design/vorlagen/" . $_POST["settings"]["bootstrap4General"]["layout"] . "/templates/cms/index.phtml"; - $handlecmsindex = fopen($filenamecmsindex, 'w'); - fputs($handlecmsindex, $event->getForm()->get('bootstrap4Sites')->get('cmsindex')->getData()); - fclose($handlecmsindex); + if (is_dir(dirname($filenamecmsindex))) { + $handlecmsindex = @fopen($filenamecmsindex, 'w'); + if ($handlecmsindex !== false) { + fputs($handlecmsindex, $event->getForm()->get('bootstrap4Sites')->get('cmsindex')->getData()); + fclose($handlecmsindex); + } + } } } $shopEntity->setDisplayArticleCount($event->getForm()->get('bootstrap4General')->get('displayArticleCount')->getData()); diff --git a/src/new/var/plugins/System/PSC/Bootstrap4/Form/Field/Style.php b/src/new/var/plugins/System/PSC/Bootstrap4/Form/Field/Style.php index 6249b6577..35799326c 100755 --- a/src/new/var/plugins/System/PSC/Bootstrap4/Form/Field/Style.php +++ b/src/new/var/plugins/System/PSC/Bootstrap4/Form/Field/Style.php @@ -118,9 +118,13 @@ if(isset($_POST["settings"]["bootstrap4General"]["layout"])) { if($event->getForm()->get('bootstrap4Style')->get('write')->getData() == "1") { if($event->getForm()->get('bootstrap4Style')->get('stylecssedit')->getData() == "1") { $filename = "/data/www/old/public/styles/vorlagen/" . $_POST["settings"]["bootstrap4General"]["layout"] . "/bootstrap/css/style.css"; - $handle = fopen($filename, 'w'); - fputs($handle, $event->getForm()->get('bootstrap4Style')->get('stylecss')->getData()); - fclose($handle); + if (is_dir(dirname($filename))) { + $handle = @fopen($filename, 'w'); + if ($handle !== false) { + fputs($handle, $event->getForm()->get('bootstrap4Style')->get('stylecss')->getData()); + fclose($handle); + } + } } } $shopEntity->setDisplayArticleCount($event->getForm()->get('bootstrap4General')->get('displayArticleCount')->getData()); diff --git a/src/old/application/data/models/Orders.php b/src/old/application/data/models/Orders.php index c8cd86815..0b61eea6e 100755 --- a/src/old/application/data/models/Orders.php +++ b/src/old/application/data/models/Orders.php @@ -35,7 +35,6 @@ */ class Orders extends BaseOrders { - protected $packageExported = false; public $mongoLoaded = false; protected $paymentRef = ''; @@ -44,13 +43,16 @@ class Orders extends BaseOrders protected $invoiceAddressSaved = []; protected $deliveryAddressSaved = []; protected $senderAddressSaved = []; + protected $voucherProduct = []; + protected $voucherPayment = []; + protected $voucherShipping = []; protected $withTax = true; protected $gutscheinAbzugNetto = 0; protected $sendDataToShipping = false; private array $gutscheinAbzugMwSt = []; - public function preSave($event) { - + public function preSave($event) + { if ($this->uuid == '') { $this->uuid = TP_Util::uuid(); } @@ -64,20 +66,20 @@ class Orders extends BaseOrders $this->created = date('Y-m-d H:i:s'); $this->updated = date('Y-m-d H:i:s'); } - if ($this->version == "") { + if ($this->version == '') { $this->version = 0; } - if ($this->type == "") { + if ($this->type == '') { $this->type = 1; } $this->version = $this->version + 1; } - public function getPayment() { - + public function getPayment() + { $paymenttype = Doctrine_Query::create() ->from('Paymenttype c') - ->where('c.id = ?', array(intval($this->paymenttype_id))) + ->where('c.id = ?', [intval($this->paymenttype_id)]) ->fetchOne(); if ($paymenttype != false) { @@ -86,10 +88,11 @@ class Orders extends BaseOrders return new Paymenttype(); } - public function getShipping() { + public function getShipping() + { $shippingtype = Doctrine_Query::create() ->from('Shippingtype c') - ->where('c.id = ?', array(intval($this->shippingtype_id))) + ->where('c.id = ?', [intval($this->shippingtype_id)]) ->fetchOne(); if ($shippingtype != false) { @@ -98,69 +101,64 @@ class Orders extends BaseOrders return new Shippingtype(); } - public function getInvoiceAddress() { + public function getInvoiceAddress() + { if ($this->invoice_address != 0) { - $address = Doctrine_Query::create() ->from('ContactAddress c') - ->where('c.id = ?', array(intval($this->invoice_address))) + ->where('c.id = ?', [intval($this->invoice_address)]) ->fetchOne(); - } else { - $address = Doctrine_Query::create() ->from('ContactAddress c') - ->where('c.id = ?', array(intval($this->delivery_address))) + ->where('c.id = ?', [intval($this->delivery_address)]) ->fetchOne(); - } return $address; } - public function getDeliveryAddress() { - + public function getDeliveryAddress() + { $address = Doctrine_Query::create() ->from('ContactAddress c') - ->where('c.id = ?', array(intval($this->delivery_address))) + ->where('c.id = ?', [intval($this->delivery_address)]) ->fetchOne(); - if(!$address) { + if (!$address) { return new ContactAddress(); } return $address; } - public function getSenderAddress() { + public function getSenderAddress() + { if ($this->sender_address != 0) { - $address = Doctrine_Query::create() ->from('ContactAddress c') - ->where('c.id = ?', array(intval($this->sender_address))) + ->where('c.id = ?', [intval($this->sender_address)]) ->fetchOne(); - } else { - $address = Doctrine_Query::create() ->from('ContactAddress c') - ->where('c.id = ?', array(intval($this->invoice_address))) + ->where('c.id = ?', [intval($this->invoice_address)]) ->fetchOne(); - } - if(!$address) { + if (!$address) { $address = Doctrine_Query::create() ->from('ContactAddress c') - ->where('c.id = ?', array(intval($this->delivery_address))) + ->where('c.id = ?', [intval($this->delivery_address)]) ->fetchOne(); } return $address; } - public function getInfo() { - if($this->info == "") { - return array(); + public function getInfo() + { + if ($this->info == '') { + return []; } return json_decode($this->info, true); @@ -183,16 +181,32 @@ class Orders extends BaseOrders $this->packageExported = $packageExported; } - public function loadMongo() { - if($this->mongoLoaded) { + public function setVoucherProduct(array $voucherProduct): void + { + $this->voucherProduct = $voucherProduct; + } + + public function setVoucherPayment(array $voucherPayment): void + { + $this->voucherPayment = $voucherPayment; + } + + public function setVoucherShipping(array $voucherShipping): void + { + $this->voucherShipping = $voucherShipping; + } + + public function loadMongo() + { + if ($this->mongoLoaded) { return true; } $dbMongo = TP_Mongo::getInstance(); - $obj = $dbMongo->Order->findOne(array('uid' => (string)$this->id)); - if(!$obj) { - $obj = $dbMongo->Order->findOne(array('uid' => $this->id)); + $obj = $dbMongo->Order->findOne(['uid' => (string) $this->id]); + if (!$obj) { + $obj = $dbMongo->Order->findOne(['uid' => $this->id]); } - if($obj) { + if ($obj) { $this->packageExported = $obj['packageExported']; $this->paymentRef = $obj['paymentRef']; $this->mongoLoaded = true; @@ -201,26 +215,31 @@ class Orders extends BaseOrders $this->deliveryAddressSaved = $obj['deliveryAddressSaved']; $this->senderAddressSaved = $obj['senderAddressSaved']; $this->gutscheinAbzugNetto = $obj['gutscheinAbzugNetto']; - $this->gutscheinAbzugMwSt = (array)$obj['gutscheinAbzugMwSt']; + $this->gutscheinAbzugMwSt = (array) $obj['gutscheinAbzugMwSt']; $this->sendDataToShipping = $obj['sendDataToShipping']; + $this->voucherProduct = $obj['voucherProduct']; + $this->voucherPayment = $obj['voucherPayment']; + $this->voucherShipping = $obj['voucherShipping']; $this->withTax = $obj['withTax']; } } - public function saveMongo() { + public function saveMongo() + { $this->loadMongo(); $dbMongo = TP_Mongo::getInstance(); - $obj = $dbMongo->Order->findOne(array('uid' => $this->id)); - if($obj) { - $dbMongo->Order->updateOne(array('uid' => $this->id), [ '$set' => $this->getArray()]); - }else{ + $obj = $dbMongo->Order->findOne(['uid' => $this->id]); + if ($obj) { + $dbMongo->Order->updateOne(['uid' => $this->id], ['$set' => $this->getArray()]); + } else { $dbMongo->Order->insertOne($this->getArray()); - } $this->mongoLoaded = true; - + } + $this->mongoLoaded = true; } - public function getArray() { - return array( + public function getArray() + { + return [ 'uid' => $this->id, 'packageExported' => $this->packageExported, 'paymentRef' => $this->paymentRef, @@ -232,8 +251,11 @@ class Orders extends BaseOrders 'gutscheinAbzugNetto' => $this->gutscheinAbzugNetto, 'gutscheinAbzugMwSt' => $this->gutscheinAbzugMwSt, 'sendDataToShipping' => $this->sendDataToShipping, + 'voucherProduct' => $this->voucherProduct, + 'voucherShipping' => $this->voucherShipping, + 'voucherPayment' => $this->voucherPayment, 'withTax' => $this->withTax, - ); + ]; } /** @@ -252,6 +274,7 @@ class Orders extends BaseOrders { $this->paymentRef = $paymentRef; } + /** * @return string */ @@ -385,6 +408,5 @@ class Orders extends BaseOrders { $this->gutscheinAbzugMwSt = $gutscheinAbzugMwSt; } +} - -} \ No newline at end of file diff --git a/src/old/application/design/vorlagen/bootstrap4_api/templates/basket/index.phtml b/src/old/application/design/vorlagen/bootstrap4_api/templates/basket/index.phtml index 20c27fd6b..4cc15739b 100755 --- a/src/old/application/design/vorlagen/bootstrap4_api/templates/basket/index.phtml +++ b/src/old/application/design/vorlagen/bootstrap4_api/templates/basket/index.phtml @@ -1,4 +1,5 @@ headScript()->prependFile('/scripts/underscore.js'); $this->headScript()->prependFile('/' . $this->designPath . '/basket/index.js'); ?> @@ -15,30 +16,40 @@ $this->headScript()->prependFile('/' . $this->designPath . '/basket/index.js'); - basketIsEmpty) : ?> + basketIsEmpty): ?>
-
translate('Sie haben keine Artikel im Warenkorb. Keine Bestellung möglich.') ?>
+
translate('Sie haben keine Artikel im Warenkorb. Keine Bestellung möglich.') + ?>
-

translate('Vielleicht möchten Sie einfach auf der Startseite beginnen?')?>

+

translate('Vielleicht möchten Sie einfach auf der Startseite beginnen?') ?>


- translate('Zur Startseite') ?> + translate('Zur Startseite') + ?>
- +
@@ -47,18 +58,26 @@ $this->headScript()->prependFile('/' . $this->designPath . '/basket/index.js');
- articles as $article) : ?> -
next() ?>"> - partial($article['article']->typ . '_basket_index.phtml', array('article' => $article, 'currency' => $this->currency, 'shop' => $this->shop, 'finish' => false)) ?> + articles as $article): ?> +
+ partial($article['article']->typ . '_basket_index.phtml', array( + 'article' => $article, + 'currency' => $this->currency, + 'shop' => $this->shop, + 'finish' => false, + )) + ?>
+ ?>

@@ -66,11 +85,15 @@ $this->headScript()->prependFile('/' . $this->designPath . '/basket/index.js');
- designsettings()->get('display_no_price')) { ?> + designsettings()->get('display_no_price')) { ?> - + - + @@ -78,67 +101,90 @@ $this->headScript()->prependFile('/' . $this->designPath . '/basket/index.js'); - no_payment) : ?> + no_payment): ?> - designsettings()->get('display_no_price')) { ?> - designsettings()->get('b2bshop')) : ?> - designsettings()->get('display_no_price')) { ?> + designsettings()->get('b2bshop')): ?> + designsettings()->get('display_no_price')) { ?> - - errorGutscheincode == false && $this->gutscheincode != "" && (TP_Basket::getBasket()->getGutscheinAbzugTyp() == TP_Basket::GUTSCHEIN_ALL || TP_Basket::getBasket()->getGutscheinAbzugTyp() == TP_Basket::GUTSCHEIN_PRODUCT)) : ?> - - - - - + + errorGutscheincode == false && + $this->gutscheincode != '' && + ( + TP_Basket::getBasket()->getGutscheinAbzugTyp() == + TP_Basket::GUTSCHEIN_ALL || + TP_Basket::getBasket()->getGutscheinAbzugTyp() == + TP_Basket::GUTSCHEIN_PRODUCT + ) + ): ?> - designsettings()->get('display_no_price')) { ?>mwertalle as $key => $mw) : ?> + designsettings()->get('display_no_price')) { ?>mwertalle as $key => $mw): ?> - designsettings()->get('display_no_price')) { ?> + designsettings()->get('display_no_price')) { ?> - errorGutscheincode == false && $this->gutscheincode != "" && (TP_Basket::getBasket()->getGutscheinAbzugTyp() == TP_Basket::GUTSCHEIN_ALL || TP_Basket::getBasket()->getGutscheinAbzugTyp() == TP_Basket::GUTSCHEIN_PRODUCT)) : ?> + errorGutscheincode == false && + $this->gutscheincode != '' && + ( + TP_Basket::getBasket()->getGutscheinAbzugTyp() == + TP_Basket::GUTSCHEIN_ALL || + TP_Basket::getBasket()->getGutscheinAbzugTyp() == + TP_Basket::GUTSCHEIN_PRODUCT + ) + ): ?> - shop->basketfield2) : ?> + shop->basketfield2): ?>
translate('Produktpreis'); ?>:translate('Produktpreis') + ; ?>:  currency->toCurrency($this->productnetto) ?> (currency->toCurrency($this->productbrutto) ?>)currency->toCurrency($this->productnetto) + ?> (currency->toCurrency($this->productbrutto) ?>)
- designsettings()->get('display_no_price')) { ?>translate('zzgl. Versand'); ?>translate('Versand'); ?>: + designsettings()->get('display_no_price')) { ?>translate('zzgl. Versand') + ; ?>translate('Versand'); ?>: shippingtypeselected['description'] ?> - designsettings()->get('display_no_price')) { ?>currency->toCurrency($this->versand) ?> (currency->toCurrency($this->versandbrutto) ?>) + designsettings()->get('display_no_price')) { ?>currency->toCurrency($this->versand) + ?> (currency->toCurrency($this->versandbrutto) ?>)
+ designsettings()->get('display_no_price')) { ?> translate('zzgl. Zahlart'); ?>: paymenttypeselected['description'] ?> - designsettings()->get('display_no_price')) { ?>currency->toCurrency($this->paymentwert) ?> (currency->toCurrency($this->paymentwertbrutto) ?>) + designsettings()->get('display_no_price')) { ?>currency->toCurrency($this->paymentwert) + ?> (currency->toCurrency($this->paymentwertbrutto) ?>)
translate('Gutscheincode') ?>: - + - +
- translate('abzgl. Gutschein'); ?>: - - currency->toCurrency($this->gutscheincodeabzugnetto) ?> (currency->toCurrency($this->gutscheincodeabzug) ?>) -
@@ -152,7 +198,7 @@ $this->headScript()->prependFile('/' . $this->designPath . '/basket/index.js');

translate('Gesamtbetrag'); ?>:currency->toCurrency($this->brutto / 1.19)*/ ?>

@@ -164,7 +210,16 @@ $this->headScript()->prependFile('/' . $this->designPath . '/basket/index.js');

currency->toCurrency($this->brutto) ?>

@@ -187,7 +242,7 @@ $this->headScript()->prependFile('/' . $this->designPath . '/basket/index.js');
- shop->basketfield1) : ?> + shop->basketfield1): ?>
@@ -199,7 +254,7 @@ $this->headScript()->prependFile('/' . $this->designPath . '/basket/index.js');
@@ -216,8 +271,12 @@ $this->headScript()->prependFile('/' . $this->designPath . '/basket/index.js');
- - + +
@@ -225,15 +284,21 @@ $this->headScript()->prependFile('/' . $this->designPath . '/basket/index.js');
-

translate('Produktsumme Brutto'); ?>: currency->toCurrency($this->productbrutto) ?>

+

translate('Produktsumme Brutto'); ?>: currency->toCurrency($this->productbrutto) + ?>

translate('zzgl. Versand'); ?>: - currency->toCurrency($this->versandbrutto) ?> + currency->toCurrency($this->versandbrutto) + ?>
@@ -243,56 +308,70 @@ $this->headScript()->prependFile('/' . $this->designPath . '/basket/index.js'); - no_payment) : ?> + no_payment): ?> translate('zzgl. Zahlart'); ?>: - currency->toCurrency($this->paymentwertbrutto) ?> + currency->toCurrency($this->paymentwertbrutto) + ?>
- paymenttypeselected['description'] ?> + paymenttypeselected['description'] + ?>
- designsettings()->get('b2bshop')) : ?> + designsettings()->get('b2bshop')): ?>
- +
- gutscheincode == "") { ?> + gutscheincode == '' + ) { ?> Gutscheincode ungültig
- +
- errorGutscheincode == false && $this->gutscheincode != "" && (TP_Basket::getBasket()->getGutscheinAbzugTyp() == TP_Basket::GUTSCHEIN_ALL || TP_Basket::getBasket()->getGutscheinAbzugTyp() == TP_Basket::GUTSCHEIN_PRODUCT)) : ?> -
- translate('abzgl. Gutschein'); ?>: currency->toCurrency($this->gutscheincodeabzug) ?>
- translate('Preis abzgl. Gutschein'); ?>: currency->toCurrency($this->productbruttogutschein) ?> -
- mwertalle as $key => $mw) : ?> - translate('enth. MwSt.'); ?>%: currency->toCurrency($mw) ?>
+ mwertalle as $key => $mw): ?> + translate('enth. MwSt.'); ?>%: currency->toCurrency($mw) + ?>
-

translate('Gesamtsumme Brutto'); ?>:currency->toCurrency($this->brutto / 1.19)*/ ?> currency->toCurrency($this->brutto) ?>

+

translate('Gesamtsumme Brutto'); ?>:currency->toCurrency($this->brutto / 1.19)*/ ?> currency->toCurrency($this->brutto) + ?>

- shop->basketfield1) : ?> + shop->basketfield1): ?>
@@ -300,7 +379,7 @@ $this->headScript()->prependFile('/' . $this->designPath . '/basket/index.js');
- shop->basketfield2) : ?> + shop->basketfield2): ?>
@@ -309,8 +388,12 @@ $this->headScript()->prependFile('/' . $this->designPath . '/basket/index.js');
- - + +
diff --git a/src/old/application/modules/default/controllers/BasketController.php b/src/old/application/modules/default/controllers/BasketController.php index 1fc5d273e..1db7da7cb 100755 --- a/src/old/application/modules/default/controllers/BasketController.php +++ b/src/old/application/modules/default/controllers/BasketController.php @@ -1676,9 +1676,7 @@ class BasketController extends TP_Controller_Action } else { $basket->setPreisNetto($netto); if ($netto > 0) { - $basket->setPreisBrutto( - ($netto + $versand + $mwert + $this->view->paymentwert) - ($basket->getGutscheinAbzug() * 1), - ); + $basket->setPreisBrutto($netto + $versand + $mwert + $this->view->paymentwert); } else { $basket->setPreisBrutto($versand + $mwert + $this->view->paymentwert); } @@ -1886,6 +1884,9 @@ class BasketController extends TP_Controller_Action $order->versandkosten = $basket->getVersandkosten(); $order->lang = strtolower(Zend_Registry::get('locale')->getLanguage()); $order->mwertalle = Zend_Json::encode($basket->getMWert()); + $order->setVoucherProduct($basket->getVoucherProduct()); + $order->setVoucherShipping($basket->getVoucherShipping()); + $order->setVoucherPayment($basket->getVoucherPayment()); $order->save(); $order->saveMongo(); @@ -1961,10 +1962,7 @@ class BasketController extends TP_Controller_Action $basket->setShippingtype(0); $basket->setPreisNetto($basket->getProduktPreisNetto()); $basket->setPreisSteuer($basket->getProduktPreisSteuer()); - $basket->setPreisBrutto( - ($basket->getProduktPreisSteuer() + $basket->getProduktPreisNetto()) - - ($basket->getGutscheinAbzug() * 1), - ); + $basket->setPreisBrutto($basket->getProduktPreisSteuer() + $basket->getProduktPreisNetto()); $basket->setVersandkosten(0); $basket->setVersandBrutto(0); } else { @@ -2016,9 +2014,7 @@ class BasketController extends TP_Controller_Action $basket->setPreisNetto($basket->getProduktPreisNetto() + $versand); $basket->setPreisSteuer($basket->getProduktPreisSteuer() + $mwert); - $basket->setPreisBrutto( - ($basket->getPreisNetto() + $basket->getPreisSteuer()) - ($basket->getGutscheinAbzug() * 1), - ); + $basket->setPreisBrutto($basket->getPreisNetto() + $basket->getPreisSteuer()); $basket->setVersandkosten($versand); $basket->setVersandBrutto($versand + $mwert); } @@ -2516,6 +2512,10 @@ class BasketController extends TP_Controller_Action $basket->setGutscheinAbzugTyp(TP_Basket::GUTSCHEIN_ALL); } + $bruttoGesamt = 0; + $bruttoGesamtForVoucher = []; + $bruttoGesamtShippingForVoucher = []; + $bruttoGesamtPaymentForVoucher = []; $basket->setGutscheinAbzug(0); $basket->setGutscheinAbzugNetto(0); $basket->setGutscheinAbzugMwSt([]); @@ -2675,7 +2675,7 @@ class BasketController extends TP_Controller_Action } $art->setHasGutschein(false); - if ($basket->getGutschein() != '') { + if (false && $basket->getGutschein() != '') { $articleGroups = array_keys($article->ArticleGroupArticle->toKeyValueArray( 'articlegroup_id', 'article_id', @@ -2742,6 +2742,15 @@ class BasketController extends TP_Controller_Action $summewarenwert[$prozent] + ($art->getnetto() * $art->getCount()) + ($art->getNetto() * $art->getCount()); + + if (!isset($bruttoGesamtForVoucher[$prozent])) { + $bruttoGesamtForVoucher[$prozent] = 0; + } + + $bruttoGesamtForVoucher[$prozent] = + $bruttoGesamtForVoucher[$prozent] + + round((($art->getnetto() * $art->getCount()) / 100) * $prozent, 2) + + ($art->getnetto() * $art->getCount()); } } $mwert = 0; @@ -2751,9 +2760,9 @@ class BasketController extends TP_Controller_Action $basket->setProduktPreisSteuer($mwert); $this->view->productmwert = $mwert; $this->view->productbrutto = $netto + $mwert; + $usedBruttoVoucher = $this->view->productbrutto; $this->view->productnetto = $netto; $this->view->gutschein = false; - if ($creditSystemMinBasketValue > 0 && $creditSystemMinBasketValue > ($netto + $mwert)) { $this->view->priorityMessenger('Warenwert zu niedrig', 'success'); $basket->setGutschein(''); @@ -2837,7 +2846,6 @@ class BasketController extends TP_Controller_Action } } } - $basket->setShippingtype($shippingtype['id']); $this->view->shippingselected = $shippingtype['id']; $this->view->shippingtypeselected = $shippingtype; @@ -2879,48 +2887,34 @@ class BasketController extends TP_Controller_Action if ($versand > 0 || $versandpos > 0) { $versand = $versand + $versandpos; } - if (false && $creditSystemRest > 0 && $creditSystemShipping) { + $maxMwert = array_search(max($bruttoGesamtForVoucher), $bruttoGesamtForVoucher); + $maxValue = max($bruttoGesamtForVoucher); + + if ($maxValue > $versand) { + $shippingtype['mwert'] = $maxMwert; + } + if ($creditSystemShipping) { $mwert = $mwert + round(($versand / 100) * ((float) str_replace('%', '', $shippingtype['mwert'])), 2); - if ( - $creditSystemRest > - ( - round(($versand / 100) * ((float) str_replace('%', '', $shippingtype['mwert'])), 2) + - $versand - ) - ) { - $basket->setGutscheinAbzug( - $basket->getGutscheinAbzug() + - $versand + - round(($versand / 100) * ((float) str_replace('%', '', $shippingtype['mwert'])), 2), - ); - $basket->setGutscheinAbzugNetto($basket->getGutscheinAbzugNetto() + $versand); - $basket->setGutscheinAbzugMwStKey( - (float) str_replace('%', '', $shippingtype['mwert']), + $basket->setGutscheinAbzug( + $basket->getGutscheinAbzug() + + $versand + round(($versand / 100) * ((float) str_replace('%', '', $shippingtype['mwert'])), 2), - ); - $creditSystemRest = ($creditSystemRest - $mwert) - $versand; - } else { - $basket->setGutscheinAbzug($basket->getGutscheinAbzug() + $creditSystemRest); - $basket->setGutscheinAbzugNetto( - ($basket->getGutscheinAbzugNetto() + $creditSystemRest) - - round( - ($creditSystemRest / 100) * ((float) str_replace('%', '', $shippingtype['mwert'])), - 2, - ), - ); - $basket->setGutscheinAbzugMwStKey( - (float) str_replace('%', '', $shippingtype['mwert']), - round( - ($creditSystemRest / 100) * ((float) str_replace('%', '', $shippingtype['mwert'])), - 2, - ), - ); - } + ); + $basket->setGutscheinAbzugNetto($basket->getGutscheinAbzugNetto() + $versand); + $basket->setGutscheinAbzugMwStKey( + (float) str_replace('%', '', $shippingtype['mwert']), + round(($versand / 100) * ((float) str_replace('%', '', $shippingtype['mwert'])), 2), + ); + $creditSystemRest = ($creditSystemRest - $mwert) - $versand; + $mwertalle[str_replace('%', '', $shippingtype['mwert'])] = $mwertalle[str_replace('%', '', $shippingtype['mwert'])] + $versand; $this->view->versandbrutto = $versand + round(($versand / 100) * ((float) str_replace('%', '', $shippingtype['mwert'])), 2); + $bruttoGesamtShippingForVoucher[str_replace('%', '', $shippingtype['mwert'])] = + $this->view->versandbrutto; + $usedBruttoVoucher += round($this->view->versandbrutto, 2); } else { $mwert = $mwert + round(($versand / 100) * ((float) str_replace('%', '', $shippingtype['mwert'])), 2); @@ -3026,49 +3020,35 @@ class BasketController extends TP_Controller_Action if ($versand > 0 || $versandpos > 0) { $versand = $versand + $versandpos; } + $maxMwert = array_search(max($bruttoGesamtForVoucher), $bruttoGesamtForVoucher); + $maxValue = max($bruttoGesamtForVoucher); - if (false && $creditSystemRest > 0 && $creditSystemShipping) { + if ($maxValue > $versand) { + $shippingtype['mwert'] = $maxMwert; + } + if ($creditSystemShipping) { $mwert = $mwert + round(($versand / 100) * ((float) str_replace('%', '', $shippingtype['mwert'])), 2); - if ( - $creditSystemRest > - ( - round(($versand / 100) * ((float) str_replace('%', '', $shippingtype['mwert'])), 2) + - $versand - ) - ) { - $basket->setGutscheinAbzug( - $basket->getGutscheinAbzug() + - $versand + - round(($versand / 100) * ((float) str_replace('%', '', $shippingtype['mwert'])), 2), - ); - $basket->setGutscheinAbzugNetto($basket->getGutscheinAbzugNetto() + $versand); - $basket->setGutscheinAbzugMwStKey( - (float) str_replace('%', '', $shippingtype['mwert']), + $basket->setGutscheinAbzug( + $basket->getGutscheinAbzug() + + $versand + round(($versand / 100) * ((float) str_replace('%', '', $shippingtype['mwert'])), 2), - ); - $creditSystemRest = ($creditSystemRest - $mwert) - $versand; - } else { - $basket->setGutscheinAbzug($basket->getGutscheinAbzug() + $creditSystemRest); - $basket->setGutscheinAbzugNetto( - ($basket->getGutscheinAbzugNetto() + $creditSystemRest) - - round( - ($creditSystemRest / 100) * ((float) str_replace('%', '', $shippingtype['mwert'])), - 2, - ), - ); - $basket->setGutscheinAbzugMwStKey( - (float) str_replace('%', '', $shippingtype['mwert']), - round( - ($creditSystemRest / 100) * ((float) str_replace('%', '', $shippingtype['mwert'])), - 2, - ), - ); - } + ); + $basket->setGutscheinAbzugNetto($basket->getGutscheinAbzugNetto() + $versand); + $basket->setGutscheinAbzugMwStKey( + (float) str_replace('%', '', $shippingtype['mwert']), + round(($versand / 100) * ((float) str_replace('%', '', $shippingtype['mwert'])), 2), + ); + $creditSystemRest = ($creditSystemRest - $mwert) - $versand; + $mwertalle[str_replace('%', '', $shippingtype['mwert'])] = $mwertalle[str_replace('%', '', $shippingtype['mwert'])] + $versand; $this->view->versandbrutto = $versand + round(($versand / 100) * ((float) str_replace('%', '', $shippingtype['mwert'])), 2); + + $bruttoGesamtShippingForVoucher[str_replace('%', '', $shippingtype['mwert'])] = + $this->view->versandbrutto; + $usedBruttoVoucher += round($this->view->versandbrutto, 2); } else { $mwert = $mwert + round(($versand / 100) * ((float) str_replace('%', '', $shippingtype['mwert'])), 2); @@ -3238,34 +3218,16 @@ class BasketController extends TP_Controller_Action $this->view->paymentwert = $paymenttype['wert']; } } - if (false && $creditSystemRest > 0 && $creditSystemPayment) { + if ($creditSystemPayment) { $mwert = $mwert + round(($this->view->paymentwert / 100) * $paymenttype['mwert'], 2); - if ($creditSystemRest > round(($this->view->paymentwert / 100) * $paymenttype['mwert'], 2)) { - $basket->setGutscheinAbzug( - $basket->getGutscheinAbzug() + - round(($this->view->paymentwert / 100) * $paymenttype['mwert'], 2) + - $this->view->paymentwert, - ); - $basket->setGutscheinAbzugNetto($basket->getGutscheinAbzugNetto() + $this->view->paymentwert); - $basket->setGutscheinAbzugMwStKey( - $paymenttype['mwert'], - round(($this->view->paymentwert / 100) * $paymenttype['mwert'], 2), - ); - } else { - $basket->setGutscheinAbzug($basket->getGutscheinAbzug() + $creditSystemRest); - $basket->setGutscheinAbzugNetto( - ($basket->getGutscheinAbzugNetto() + $creditSystemRest) - - round(($creditSystemRest / 100) * ((float) str_replace('%', '', $paymenttype['mwert'])), 2), - ); - $basket->setGutscheinAbzugMwStKey( - (float) str_replace('%', '', $paymenttype['mwert']), - round(($creditSystemRest / 100) * ((float) str_replace('%', '', $paymenttype['mwert'])), 2), - ); - } + $mwertalle[(string) $paymenttype['mwert']] = $mwertalle[(string) $paymenttype['mwert']] + $this->view->paymentwert; $this->view->paymentwertbrutto = $this->view->paymentwert + round(($this->view->paymentwert / 100) * $paymenttype['mwert'], 2); + $bruttoGesamtPaymentForVoucher[$paymenttype['mwert']] = $this->view->paymentwertbrutto; + $usedBruttoVoucher += round($this->view->paymentwertbrutto, 2); + $usedBruttoVoucher = intval($usedBruttoVoucher * 100) / 100; } elseif ($creditSystemZeroPayment) { $basket->setGutscheinAbzug( $basket->getGutscheinAbzug() + @@ -3293,16 +3255,111 @@ class BasketController extends TP_Controller_Action $this->view->articles = $temp; $this->_helper->layout->setLayout('default'); - $summenUeberAlleSteuersaetze = $mwertalle; $tmpMwertAlle = []; foreach ($mwertalle as $key => $wert) { $tmpMwertAlle[$key] = round(($wert / 100) * ((float) $key), 2); } $mwertalle = $tmpMwertAlle; - - var_dump($summenUeberAlleSteuersaetze); - $voucherMwert = []; - foreach ($summenUeberAlleSteuersaetzer as $key => $value) { + $rabatteProduct = []; + $rabatteShipping = []; + $rabattePayment = []; + // Berechnung Gutschein + if ($creditSystemValue > 0) { + if ($creditSystemValue > $usedBruttoVoucher && !$creditSystemPercent) { + $basket->setGutscheinAbzug($usedBruttoVoucher); + foreach ($bruttoGesamtForVoucher as $prozent => $value) { + $rabatteProduct[] = [ + 'brutto' => 0, + 'netto' => 0, + 'prozent' => $prozent, + 'steuer' => 0, + 'rabatt' => $value, + ]; + } + foreach ($bruttoGesamtPaymentForVoucher as $prozent => $value) { + $rabattePayment[] = [ + 'brutto' => 0, + 'netto' => 0, + 'prozent' => $prozent, + 'steuer' => 0, + 'rabatt' => $value, + ]; + } + foreach ($bruttoGesamtShippingForVoucher as $prozent => $value) { + $rabatteShipping[] = [ + 'brutto' => 0, + 'netto' => 0, + 'prozent' => $prozent, + 'steuer' => 0, + 'rabatt' => $value, + ]; + } + } else { + if ($creditSystemPercent) { + $creditSystemValue = round(($usedBruttoVoucher / 100) * $creditSystemValue, 2); + } + foreach ($bruttoGesamtForVoucher as $prozent => $value) { + $rabatteProduct[] = [ + 'brutto' => $value - round(($creditSystemValue * $value) / $usedBruttoVoucher, 2), + 'netto' => round( + ($value - round(($creditSystemValue * $value) / $usedBruttoVoucher, 2)) / + (($prozent / 100) + 1), + 2, + ), + 'prozent' => $prozent, + 'steuer' => round( + ( + ($value - round(($creditSystemValue * $value) / $usedBruttoVoucher, 2)) / + (($prozent / 100) + 1) + ) * + ($prozent / 100), + 2, + ), + 'rabatt' => round(($creditSystemValue * $value) / $usedBruttoVoucher, 2), + ]; + } + foreach ($bruttoGesamtPaymentForVoucher as $prozent => $value) { + $rabattePayment[] = [ + 'brutto' => $value - round(($creditSystemValue * $value) / $usedBruttoVoucher, 2), + 'netto' => round( + ($value - round(($creditSystemValue * $value) / $usedBruttoVoucher, 2)) / + (($prozent / 100) + 1), + 2, + ), + 'prozent' => $prozent, + 'steuer' => round( + ( + ($value - round(($creditSystemValue * $value) / $usedBruttoVoucher, 2)) / + (($prozent / 100) + 1) + ) * + ($prozent / 100), + 2, + ), + 'rabatt' => round(($creditSystemValue * $value) / $usedBruttoVoucher, 2), + ]; + } + foreach ($bruttoGesamtShippingForVoucher as $prozent => $value) { + $rabatteShipping[] = [ + 'brutto' => $value - round(($creditSystemValue * $value) / $usedBruttoVoucher, 2), + 'netto' => round( + ($value - round(($creditSystemValue * $value) / $usedBruttoVoucher, 2)) / + (($prozent / 100) + 1), + 2, + ), + 'prozent' => $prozent, + 'steuer' => round( + ( + ($value - round(($creditSystemValue * $value) / $usedBruttoVoucher, 2)) / + (($prozent / 100) + 1) + ) * + ($prozent / 100), + 2, + ), + 'rabatt' => round(($creditSystemValue * $value) / $usedBruttoVoucher, 2), + ]; + } + $basket->setGutscheinAbzug($creditSystemValue); + } } $this->view->productbruttogutschein = 0; @@ -3340,6 +3397,9 @@ class BasketController extends TP_Controller_Action $this->view->versandbrutto, $mwertalle, $voucherMwert, + $rabatteProduct, + $rabatteShipping, + $rabattePayment, ); } @@ -4326,8 +4386,7 @@ class BasketController extends TP_Controller_Action (($versand / 100) * str_replace('%', '', $shippingtype['mwert'])); $basket->setPreisBrutto( - ($basket->getPreisNetto() + $versand + $mwert + $basket->getZahlkosten()) - - ($basket->getGutscheinAbzug() * 1), + $basket->getPreisNetto() + $versand + $mwert + $basket->getZahlkosten(), ); $basket->setVersandkosten($versand); $basket->setPreisSteuer($mwert); @@ -4686,7 +4745,9 @@ class BasketController extends TP_Controller_Action $order->setWithTax($withTax); $order->setGutscheinAbzugNetto($basket->getGutscheinAbzugNetto()); $order->setGutscheinAbzugMwSt($basket->getGutscheinAbzugMwSt()); - + $order->setVoucherProduct($basket->getVoucherProduct()); + $order->setVoucherShipping($basket->getVoucherShipping()); + $order->setVoucherPayment($basket->getVoucherPayment()); $order->saveMongo(); $basePath = APPLICATION_PATH . '/../market/basket/' . $order->id . '/'; diff --git a/src/old/application/modules/default/controllers/SearchController.php b/src/old/application/modules/default/controllers/SearchController.php index d1f01a7f2..fea701fb6 100755 --- a/src/old/application/modules/default/controllers/SearchController.php +++ b/src/old/application/modules/default/controllers/SearchController.php @@ -11,26 +11,23 @@ class SearchController extends TP_Controller_Action */ public function indexAction() { - (new TP_Basket())->clearTempProduct(); - $this->view->items = array(); - $this->view->article = array(); - $this->view->cms = array(); - $this->view->motive = array(); + new TP_Basket()->clearTempProduct(); + $this->view->items = []; + $this->view->article = []; + $this->view->cms = []; + $this->view->motive = []; - $filters = array( - 'q' => 'Alnum' - ); + $filters = [ + 'q' => 'Alnum', + ]; - $validators = array( - 'q' => 'Alnum' - ); + $validators = [ + 'q' => 'Alnum', + ]; $input = new Zend_Filter_Input($filters, $validators, $this->_getAllParams()); - if ($input->isValid('q') - && $this->_getParam('q') != "" - ) { - + if ($input->isValid('q') && $this->_getParam('q') != '') { $this->view->q = $this->_getParam('q'); $query = explode(' ', $this->_getParam('q')); @@ -45,29 +42,46 @@ class SearchController extends TP_Controller_Action ->where( "c.shop_id = ? AND c.enable = 1 AND c.display_not_in_overview = 0 - AND (c.meta_keywords LIKE '%" . $searchQuery . "%' OR c.sub_title LIKE '%" . $searchQuery . "%' OR c.title LIKE '%" . $searchQuery . "%' OR c.kostenstelle LIKE '%" . $searchQuery . "%' OR c.article_nr_intern LIKE '%" . $searchQuery . "%' OR c.info LIKE '%" . $searchQuery . "%' OR c.einleitung LIKE '%" . $searchQuery . "%')", - array($this->shop->id) + AND (c.meta_keywords LIKE '%" . + $searchQuery . + "%' OR c.sub_title LIKE '%" . + $searchQuery . + "%' OR c.title LIKE '%" . + $searchQuery . + "%' OR c.kostenstelle LIKE '%" . + $searchQuery . + "%' OR c.article_nr_intern LIKE '%" . + $searchQuery . + "%' OR c.info LIKE '%" . + $searchQuery . + "%' OR c.einleitung LIKE '%" . + $searchQuery . + "%')", + [$this->shop->id], ) ->orderBy('c.pos ASC') ->execute(); - - $temp = array(); + $temp = []; $temp[] = 0; if (Zend_Auth::getInstance()->hasIdentity()) { $identity = Zend_Auth::getInstance()->getIdentity(); - $articles_contact = Doctrine_Query::create()->from('ContactArticle c')->where('c.contact_id = ?', array($identity ['id']))->execute()->toArray(); + $articles_contact = Doctrine_Query::create() + ->from('ContactArticle c') + ->where('c.contact_id = ?', [$identity['id']]) + ->execute() + ->toArray(); foreach ($articles_contact as $art) { $temp[] = $art['article_id']; } - $temp = $this->getAccountArticle($temp, $identity ['account_id']); + $temp = $this->getAccountArticle($temp, $identity['account_id']); } - $article = array(); + $article = []; foreach ($articles as $art) { if (!$art->private || in_array($art->id, $temp)) { @@ -76,35 +90,36 @@ class SearchController extends TP_Controller_Action } $this->view->article = $article; - /* CMS */ - $cms = Doctrine_Query::create() ->select() ->from('Cms c') ->where( - "c.shop_id = ? - AND (c.title LIKE '%".$searchQuery."%' OR text1 LIKE '%".$searchQuery."%')", - array($this->shop->id) + "c.shop_id = ? AND c.enable = 1 + AND (c.title LIKE '%" . $searchQuery . "%' OR text1 LIKE '%" . $searchQuery . "%')", + [$this->shop->id], ) ->execute(); - - $temp = array(); + $temp = []; $temp[] = 0; if (Zend_Auth::getInstance()->hasIdentity()) { $identity = Zend_Auth::getInstance()->getIdentity(); - $articles_contact = Doctrine_Query::create()->from('ContactCms c')->where('c.contact_id = ?', array($identity ['id']))->execute()->toArray(); + $articles_contact = Doctrine_Query::create() + ->from('ContactCms c') + ->where('c.contact_id = ?', [$identity['id']]) + ->execute() + ->toArray(); foreach ($articles_contact as $art) { $temp[] = $art['cms_id']; } } - $tempCms = array(); + $tempCms = []; foreach ($cms as $art) { if (!$art->private || in_array($art->id, $temp)) { @@ -113,7 +128,6 @@ class SearchController extends TP_Controller_Action } $this->view->cms = $tempCms; - } } @@ -122,8 +136,15 @@ class SearchController extends TP_Controller_Action if ($deep == 4) { return $articles; } - $account_article = Doctrine_Query::create()->from('AccountArticle c')->where('c.account_id = ?', array($account_id))->execute()->toArray(); - $account = Doctrine_Query::create()->from('Account a')->where('a.id = ?', array($account_id))->fetchOne(); + $account_article = Doctrine_Query::create() + ->from('AccountArticle c') + ->where('c.account_id = ?', [$account_id]) + ->execute() + ->toArray(); + $account = Doctrine_Query::create() + ->from('Account a') + ->where('a.id = ?', [$account_id]) + ->fetchOne(); foreach ($account_article as $art) { if (!in_array($art['article_id'], $articles)) { @@ -131,11 +152,10 @@ class SearchController extends TP_Controller_Action } } - if ($account['filiale_id'] != "" && $account['filiale_id'] != 0) { + if ($account['filiale_id'] != '' && $account['filiale_id'] != 0) { $articles = $this->getAccountArticle($articles, $account['filiale_id'], $deep + 1); } return $articles; } - } diff --git a/src/old/library/TP/Basket.php b/src/old/library/TP/Basket.php index 17a9f09c8..7a314f83d 100755 --- a/src/old/library/TP/Basket.php +++ b/src/old/library/TP/Basket.php @@ -270,10 +270,10 @@ class TP_Basket $WarenkorbPreis = 0; $ArtikelAnzahl = $this->_Warenkorb->ArtikelAnzahl; if ($ArtikelAnzahl < 1) { - return array( + return [ 'WarenkorbPreis' => $WarenkorbPreis, 'Artikelanzahl' => $ArtikelAnzahl, - ); + ]; } else { foreach ($this->_Warenkorb->Artikel as $Artikel) { // DB-Prefix & Adapter auslesen @@ -291,10 +291,10 @@ class TP_Basket $WarenkorbPreis += $result->shop_artikel_preis * $Artikel['Anzahl']; } } - return array( + return [ 'WarenkorbPreis' => $WarenkorbPreis, 'Artikelanzahl' => $ArtikelAnzahl, - ); + ]; } public function checkIsLayouterIdInUse($id) @@ -888,6 +888,9 @@ class TP_Basket $versandart, $mwert, $gutscheinMwert, + $voucherProduct, + $voucherShipping, + $voucherPayment, ) { if ($this->_Warenkorb->isLocked()) { $this->_Warenkorb->unLock(); @@ -898,6 +901,9 @@ class TP_Basket $this->_Warenkorb->VersandkostenBrutto = $versandart; $this->_Warenkorb->mwert = $mwert; $this->_Warenkorb->vouchermwert = $vouchermwert; + $this->_Warenkorb->voucherProduct = $voucherProduct; + $this->_Warenkorb->voucherShipping = $voucherShipping; + $this->_Warenkorb->voucherPayment = $voucherPayment; //Namespace wieder sperren $this->_Warenkorb->lock(); } @@ -954,9 +960,9 @@ class TP_Basket $user = Doctrine_Query::create() ->from('Contact c') ->where('c.id = ?') - ->fetchOne(array( + ->fetchOne([ $user['id'], - )); + ]); if (!$user['mwert']) { return false; } @@ -1059,6 +1065,21 @@ class TP_Basket return $this->_Warenkorb->vouchermwert; } + public function getVoucherProduct() + { + return $this->_Warenkorb->voucherProduct; + } + + public function getVoucherShipping() + { + return $this->_Warenkorb->voucherShipping; + } + + public function getVoucherPayment() + { + return $this->_Warenkorb->voucherPayment; + } + public function clearBasketItems() { $this->_Warenkorb->unlock(); @@ -1101,15 +1122,18 @@ class TP_Basket $this->_Warenkorb->productpreisnetto = 0; $this->_Warenkorb->ZahlkostenBrutto = 0; $this->_Warenkorb->VersandkostenBrutto = 0; - $this->_Warenkorb->mwert = array(); - $this->_Warenkorb->vouchermwert = array(); + $this->_Warenkorb->mwert = []; + $this->_Warenkorb->vouchermwert = []; + $this->_Warenkorb->voucherProduct = []; + $this->_Warenkorb->voucherShipping = []; + $this->_Warenkorb->voucherPayment = []; $this->_Warenkorb->Zahlkosten = 0; $this->_Warenkorb->Versandkosten = 0; $this->_Warenkorb->basketfield1 = ''; $this->_Warenkorb->basketfield2 = ''; $this->_Warenkorb->payment_zusatz = ''; - $this->_Warenkorb->offerContact = array(); + $this->_Warenkorb->offerContact = []; $this->_Warenkorb->initialized = true; $this->_Warenkorb->deliverysame = true; $this->_Warenkorb->delivery = 0; @@ -1126,10 +1150,10 @@ class TP_Basket $this->_Warenkorb->delivery_ustid = null; $this->_Warenkorb->shippingtype_extra_label = ''; - $this->_Warenkorb->info = array(); + $this->_Warenkorb->info = []; $this->_Warenkorb->paymentRef = substr(md5(rand()), 0, 7); $this->_Warenkorb->paymentGateway = ''; - $this->_Warenkorb->TempProduct = array(); + $this->_Warenkorb->TempProduct = []; $this->_Warenkorb->LastTempProductId = false; $this->_Warenkorb->offerNumber = time(); $this->_Warenkorb->withTax = true; @@ -1157,7 +1181,7 @@ class TP_Basket $this->_Warenkorb->deliveryMode = self::DELIVERY_MODE_NORMAL; $this->_Warenkorb->shippingtype_extra_label = ''; $this->_Warenkorb->invoice = 0; - $this->_Warenkorb->offerContact = array(); + $this->_Warenkorb->offerContact = []; $this->_Warenkorb->sendersame = true; $this->_Warenkorb->sender = 0; $this->_Warenkorb->Paymenttype = 0; @@ -1174,13 +1198,16 @@ class TP_Basket $this->_Warenkorb->plz = false; $this->_Warenkorb->delivery_plz = false; $this->_Warenkorb->delivery_country = false; - $this->_Warenkorb->info = array(); + $this->_Warenkorb->info = []; $this->_Warenkorb->paymentRef = substr(md5(rand()), 0, 7); $this->_Warenkorb->paymentGateway = ''; - $this->_Warenkorb->TempProduct = array(); + $this->_Warenkorb->TempProduct = []; $this->_Warenkorb->LastTempProductId = false; $this->_Warenkorb->offerNumber = time(); $this->_Warenkorb->withTax = true; $this->_Warenkorb->delivery_ustid = null; + $this->_Warenkorb->voucherProduct = []; + $this->_Warenkorb->voucherShipping = []; + $this->_Warenkorb->voucherPayment = []; } }