Index: /controller/wpsg_ShopController.class.php
===================================================================
--- /controller/wpsg_ShopController.class.php	(revision 7866)
+++ /controller/wpsg_ShopController.class.php	(revision 7867)
@@ -2148,5 +2148,5 @@
 
 			$produkt['product_id'] = $this->getProduktID($produkt_id);
-			$produkt['mwst_value'] = $this->getCalcTaxValue($produkt['mwst_key']);
+			$produkt['mwst_value'] = $this->getCalcTaxValue($produkt['mwst_key']??'0');
 
 			// Preis umrechnen fÃŒr Standardland
@@ -2162,9 +2162,9 @@
 			{
 			    
-                $tax_value_default_country = $this->getDefaultCountry()->getTax($produkt['mwst_key']);
+                $tax_value_default_country = $this->getDefaultCountry()->getTax($produkt['mwst_key']??'0');
 
 				// Preis im Backend ist in Brutto
-				$produkt['preis_brutto'] = $produkt['preis'];
-				$produkt['preis_netto'] = wpsg_calculatePreis($produkt['preis'], WPSG_NETTO, $tax_value_default_country);
+				$produkt['preis_brutto'] = $produkt['preis']??0;
+				$produkt['preis_netto'] = wpsg_calculatePreis($produkt['preis']??0, WPSG_NETTO, $tax_value_default_country);
 
 			}
@@ -2223,6 +2223,6 @@
 			{
 
-				$produkt['min_weight'] = wpsg_tf($produkt['weight']);
-				$produkt['max_weight'] = wpsg_tf($produkt['weight']);
+				$produkt['min_weight'] = wpsg_tf($produkt['weight']??0);
+				$produkt['max_weight'] = wpsg_tf($produkt['weight']??0);
 
 			}
@@ -2396,10 +2396,10 @@
 		 * Siehe auch: wpsg_product->getProductURL
 		 */
-		public function getProduktLink($basket_data)
-		{
+		public function getProduktLink($basket_data) {
 
 			if (wpsg_isSizedInt($basket_data)) $product_id = $basket_data;
 			else if (isset($basket_data['product_id'])) $product_id = $basket_data['product_id'];
 			else if (wpsg_isSizedString($basket_data)) $product_id = $this->getProduktID($basket_data);
+			else if (!isset($basket_data['id'])) return '';
 			else $product_id = $this->getProduktID($basket_data['id']);
 
Index: /lib/wpsg_cache.class.php
===================================================================
--- /lib/wpsg_cache.class.php	(revision 7866)
+++ /lib/wpsg_cache.class.php	(revision 7867)
@@ -168,5 +168,5 @@
 				");
 
-				if (intval($this->_arProducts[$product_id]['id']) !== intval($product_id)) throw new \wpsg\Exception(wpsg_translate(
+				if (wpsg_getInt($this->_arProducts[$product_id]['id']) !== intval($product_id)) throw new \wpsg\Exception(wpsg_translate(
 				    __('Produkt #1# konnte nicht geladen werden', 'wpsg'),
                     $product_id
Index: /model/wpsg_order_product.class.php
===================================================================
--- /model/wpsg_order_product.class.php	(revision 7866)
+++ /model/wpsg_order_product.class.php	(revision 7867)
@@ -92,17 +92,23 @@
 		}
 
-        public function getProductName()
-        {
+        public function getProductName() {
 
-            $strName = $this->getProduct()->getProductName();
+			try {
 
-            if ($this->shop->hasMod('wpsg_mod_productvariants') && preg_match('/pv_(.*)/', $this->getProductKey()))
-            {
+	            $strName = $this->getProduct()->getProductName();
 
-                $vari = $this->shop->callMod('wpsg_mod_productvariants', 'getVariantenInfoArray', array($this->getProductKey()));
+	            if ($this->shop->hasMod('wpsg_mod_productvariants') && preg_match('/pv_(.*)/', $this->getProductKey())) {
 
-                if (wpsg_isSizedString($vari['key'])) $strName .= ' / '.$vari['key'];
+	                $vari = $this->shop->callMod('wpsg_mod_productvariants', 'getVariantenInfoArray', array($this->getProductKey()));
 
-            }
+	                if (wpsg_isSizedString($vari['key'])) $strName .= ' / '.$vari['key'];
+
+	            }
+
+			} catch (\Exception $e) {
+
+				$strName = '---';
+
+			}
 
             return $strName;
Index: /mods/wpsg_mod_auftragsbestaetigung.class.php
===================================================================
--- /mods/wpsg_mod_auftragsbestaetigung.class.php	(revision 7866)
+++ /mods/wpsg_mod_auftragsbestaetigung.class.php	(revision 7867)
@@ -216,4 +216,2 @@
 		
 	}
-	
-?>
Index: /mods/wpsg_mod_ordervars.class.php
===================================================================
--- /mods/wpsg_mod_ordervars.class.php	(revision 7866)
+++ /mods/wpsg_mod_ordervars.class.php	(revision 7867)
@@ -330,21 +330,17 @@
 		} // public function checkout_inner_prebutton(&$checkout_view) 
 		
-		public function mail_aftercalculation(&$order_id)
-		{
-			
+		public function mail_aftercalculation(&$order_id) {
+
 			$arOV = $this->getOrderVarsByOrderID($order_id);
-			
+
 			if (!wpsg_isSizedArray($arOV)) return;
-			
+
 			$this->shop->view['wpsg_mod_ordervars']['data'] = $arOV;
 			
-			if ($this->shop->htmlMail === true)
-			{
+			if ($this->shop->htmlMail === true) {
 				
 				$this->shop->render(WPSG_PATH_VIEW.'/mods/mod_ordervars/mail_html.phtml');
 				
-			}
-			else
-			{
+			} else {
 			
 				$this->shop->render(WPSG_PATH_VIEW.'/mods/mod_ordervars/mail.phtml');
Index: /mods/wpsg_mod_productgroups.class.php
===================================================================
--- /mods/wpsg_mod_productgroups.class.php	(revision 7866)
+++ /mods/wpsg_mod_productgroups.class.php	(revision 7867)
@@ -296,6 +296,6 @@
 				$sticky_data = $this->db->fetchRow("SELECT * FROM `".WPSG_TBL_PRODUCTS_STICKY."` WHERE `produkt_id` = '".wpsg_q($product_data['id'])."'");
 
-				if ($sticky_data['von'] > 0) $this->shop->view['wpsg_mod_productgroups']['sticky_von'] = date('d.m.Y', $sticky_data['von']);
-				if ($sticky_data['bis'] > 0) $this->shop->view['wpsg_mod_productgroups']['sticky_bis'] = date('d.m.Y', $sticky_data['bis']);;
+				if (($sticky_data['von']??0) > 0) $this->shop->view['wpsg_mod_productgroups']['sticky_von'] = date('d.m.Y', $sticky_data['von']);
+				if (($sticky_data['bis']??0) > 0) $this->shop->view['wpsg_mod_productgroups']['sticky_bis'] = date('d.m.Y', $sticky_data['bis']);;
 
 			}
Index: /views/mailtemplates/html/adminmail.phtml
===================================================================
--- /views/mailtemplates/html/adminmail.phtml	(revision 7866)
+++ /views/mailtemplates/html/adminmail.phtml	(revision 7867)
@@ -20,5 +20,5 @@
 <?php $this->render(WPSG_PATH_VIEW.'/mailtemplates/html/order.phtml'); ?> 
 
-<?php $this->callMods('mail_aftercalculation', array(&$this->view['basket']['checkout']['o_id'])); ?> 
+<?php $this->callMods('mail_aftercalculation', array(&$this->view['order']['id'])); ?>
 
 <?php if (wpsg_isSizedString($this->view['basket']['checkout']['comment'])) { ?>
Index: /views/mailtemplates/html/kundenmail.phtml
===================================================================
--- /views/mailtemplates/html/kundenmail.phtml	(revision 7866)
+++ /views/mailtemplates/html/kundenmail.phtml	(revision 7867)
@@ -22,5 +22,5 @@
 <?php $this->render(WPSG_PATH_VIEW.'/mailtemplates/html/order.phtml'); ?>
 
-<?php $this->callMods('mail_aftercalculation', array(&$this->view['basket']['checkout']['o_id'])); ?>
+<?php $this->callMods('mail_aftercalculation', array(&$this->view['order']['id'])); ?>
 
 <?php if (wpsg_isSizedString($this->view['basket']['checkout']['comment'])) { ?>
Index: /views/mailtemplates/order.phtml
===================================================================
--- /views/mailtemplates/order.phtml	(revision 7866)
+++ /views/mailtemplates/order.phtml	(revision 7867)
@@ -121,4 +121,4 @@
 <?php echo wpsg_pad_left(wpsg_ff($this->view['basket']['sum']['preis_gesamt_brutto'], $this->get_option('wpsg_currency')), 34); ?>
 <?php $this->callMods('mail_order_end', [&$this->view['basket']['arCalculation'], false]); ?>
- 
-<?php $this->callMods('mail_aftercalculation', array(&$this->view['basket']['checkout']['o_id'])); ?>
+
+<?php $this->callMods('mail_aftercalculation', array(&$this->view['order']['id'])); ?>
Index: /views/mods/mod_auftragsbestaetigung/auftragsbestaetigung.phtml
===================================================================
--- /views/mods/mod_auftragsbestaetigung/auftragsbestaetigung.phtml	(revision 7866)
+++ /views/mods/mod_auftragsbestaetigung/auftragsbestaetigung.phtml	(revision 7867)
@@ -104,10 +104,10 @@
 <?php if ($this->view['basket']['sum']['preis_shipping'] != 0 || $this->get_option('wpsg_hideemptyshipping') != '1') { ?> 
      <?php echo wpsg_pad_right(__('Versandkosten', 'wpsg'), 40); ?>
-<?php echo wpsg_pad_left(wpsg_ff($this->arShipping[$this->view['basket']['checkout']['shipping']]['mwst_value'],'% '), 10); ?>
+<?php echo wpsg_pad_left(wpsg_ff($this->arShipping[$this->view['basket']['checkout']['shipping']]['mwst_value']??0,'% '), 10); ?>
 <?php echo wpsg_pad_left(wpsg_ff($this->view['basket']['sum']['preis_shipping'], $this->get_option('wpsg_currency')), 21); ?> 
 <?php } ?>
 <?php if ($this->view['basket']['sum']['preis_payment'] != 0 || $this->get_option('wpsg_hideemptypayment') != '1') { ?>
      <?php echo wpsg_pad_right(__('Zahlungsart', 'wpsg'), 40); ?>
-<?php echo wpsg_pad_left(wpsg_ff($this->arPayment[$this->view['basket']['checkout']['payment']]['mwst_value'],'% '), 10); ?>
+<?php echo wpsg_pad_left(wpsg_ff($this->arPayment[$this->view['basket']['checkout']['payment']]['mwst_value']??0,'% '), 10); ?>
 <?php echo wpsg_pad_left(wpsg_ff($this->view['basket']['sum']['preis_payment'], $this->get_option('wpsg_currency')), 21); ?> 
 <?php } ?>
@@ -128,4 +128,6 @@
      <?php echo wpsg_pad_right(__('Gesamtpreis', 'wpsg'), 37); ?>
 <?php echo wpsg_pad_left(wpsg_ff($this->view['basket']['sum']['preis_gesamt_brutto'], $this->get_option('wpsg_currency')), 34); ?> 
+
+<?php $this->callMods('mail_aftercalculation', array(&$this->view['order']['id'])); ?>
 
 <?php echo __('Wir bedanken uns fuer Ihre Bestellung.', 'wpsg'); ?> 
Index: /views/mods/mod_auftragsbestaetigung/auftragsbestaetigung_html.phtml
===================================================================
--- /views/mods/mod_auftragsbestaetigung/auftragsbestaetigung_html.phtml	(revision 7866)
+++ /views/mods/mod_auftragsbestaetigung/auftragsbestaetigung_html.phtml	(revision 7867)
@@ -22,5 +22,5 @@
 <?php $this->render(WPSG_PATH_VIEW.'/mailtemplates/html/order.phtml'); ?> 
 
-<?php $this->callMods('mail_aftercalculation', array(&$this->view['basket']['checkout']['o_id'])); ?>
+<?php $this->callMods('mail_aftercalculation', array(&$this->view['order']['id'])); ?>
 
 <?php if (wpsg_isSizedString($this->view['basket']['checkout']['comment'])) { ?>
Index: /views/order/index.phtml
===================================================================
--- /views/order/index.phtml	(revision 7866)
+++ /views/order/index.phtml	(revision 7867)
@@ -363,11 +363,15 @@
 								
 								?>
-                            
-                                <?php echo wpsg_translate(__('#1# x <a href="#2#">#3#</a> fÃŒr je #4#', 'wpsg'),
-                                    $oOrderProduct->getCount(),
-									wp_nonce_url(WPSG_URL_WP.'wp-admin/admin.php?page=wpsg-Produkt&action=edit&edit_id='.$oOrderProduct->getProductId(), 'wpsg-product-edit-'.wpsg_getInt($product_id)),
-                                    $oOrderProduct->getProductName(),
-                                    wpsg_ff($oOrderProduct->getOneAmount(), $this->get_option('wpsg_currency'))
-                                ); ?><br />
+
+                                <?php
+
+                                    echo wpsg_translate(__('#1# x <a href="#2#">#3#</a> fÃŒr je #4#', 'wpsg'),
+                                        $oOrderProduct->getCount(),
+                                        wp_nonce_url(WPSG_URL_WP.'wp-admin/admin.php?page=wpsg-Produkt&action=edit&edit_id='.$oOrderProduct->getProductId(), 'wpsg-product-edit-'.wpsg_getInt($product_id)),
+                                        $oOrderProduct->getProductName(),
+                                        wpsg_ff($oOrderProduct->getOneAmount(), $this->get_option('wpsg_currency'))
+                                    );
+
+                                ?><br />
                                 
                                 <?php if ($oAbo !== null) { ?>
Index: /views/warenkorb/overview.phtml
===================================================================
--- /views/warenkorb/overview.phtml	(revision 7866)
+++ /views/warenkorb/overview.phtml	(revision 7867)
@@ -369,5 +369,5 @@
 						echo wpsg_ff($this->view['basket']['sum']['preis_shipping'], $this->get_option('wpsg_currency'));
 						
-						if (strpos($this->view['basket']['arCalculation']['shipping'][0]['set'], '%') !== false) {
+						if (strpos(($this->view['basket']['arCalculation']['shipping'][0]['set']??''), '%') !== false) {
 							
 							echo '<span class="procent_payship">('.wpsg_ff(wpsg_tf($this->view['basket']['arCalculation']['shipping'][0]['set']), '%').')</span>';
