Index: /mods/wpsg_mod_productvariants.class.php
===================================================================
--- /mods/wpsg_mod_productvariants.class.php	(revision 7202)
+++ /mods/wpsg_mod_productvariants.class.php	(revision 7204)
@@ -883,5 +883,35 @@
 
 		}
-
+		
+		/**
+		 * ErmÃ¶glicht es die Ersetzungsfunktion aus einem Modul zu erweitern
+		 */
+		public function replaceUniversalPlatzhalter(&$arReplace, $order_id = false, $kunden_id = false, $rechnung_id = false, $product_id = false, $product_index = false) {
+			
+			$product_key = $this->db->fetchOne("SELECT `productkey` FROM `".WPSG_TBL_ORDERPRODUCT."` WHERE `o_id` = '".wpsg_q($order_id)."' AND `p_id` = '".wpsg_q($product_id)."' AND `product_index` = '".wpsg_q($product_index)."' ");
+			 			
+			if ($this->isVariantsProductKey($product_key)) {
+				
+				$arVariantenInfo = $this->getVariantenInfoArray($product_key);
+				
+				foreach ($arVariantenInfo as $k => $v) {
+					
+					if (is_numeric($k)) {
+						
+						$arReplace['/%productvariants_'.$k.'_value%/i'] = $v['value'];
+						$arReplace['/%productvariants_'.$k.'_artnr%/i'] = $v['artnr'];
+						$arReplace['/%productvariants_'.$k.'_price%/i'] = $v['preis'];
+						
+					}
+					
+				}
+				
+				$arReplace['/%productvariants_key%/i'] = $arVariantenInfo['key'];
+				$arReplace['/%productvariants_akey%/i'] = $arVariantenInfo['akey'];
+								
+			} 
+			
+		}
+		
 		/* Modulfunktionen */
 
