Index: /model/wpsg_order.class.php
===================================================================
--- /model/wpsg_order.class.php	(revision 7348)
+++ /model/wpsg_order.class.php	(revision 7349)
@@ -922,4 +922,23 @@
 		} // public function getShippingCountryID()
 
+		public function createDB() {
+			
+			$order_id = $this->id;
+			
+			if (!wpsg_isSizedInt($this->id)) {
+				
+				$order_id = $this->db->ImportQuery(WPSG_TBL_ORDER, [
+					'cdate' => 'NOW()',
+					'status' => wpsg_q(wpsg_ShopController::STATUS_UNVOLLSTAENDIG)
+				]);
+				
+				$_SESSION['wpsg']['order_id'] = $order_id;
+				
+			}
+			
+			return $order_id;
+			
+		}
+		
 		/**
 		 * Gibt das Lieferland als Objekt zurÃŒck
Index: /mods/wpsg_mod_gutschein.class.php
===================================================================
--- /mods/wpsg_mod_gutschein.class.php	(revision 7348)
+++ /mods/wpsg_mod_gutschein.class.php	(revision 7349)
@@ -130,5 +130,7 @@
 					$gs = $_SESSION['wpsg']['gs'];
 					
-					$oCalculation->addVoucher($gs['value'], $this->shop->getBackendTaxview(), '0', 1,$gs['code'],$gs['id']);
+					if ($gs['calc'] === 'p') $gs['value'] = $gs['value'].'%';
+					
+					$oCalculation->addVoucher($gs['value'], $this->shop->getBackendTaxview(), '0', 1, $gs['code'], $gs['id']);
 					
 				}
Index: /mods/wpsg_mod_kundenkontakt.class.php
===================================================================
--- /mods/wpsg_mod_kundenkontakt.class.php	(revision 7348)
+++ /mods/wpsg_mod_kundenkontakt.class.php	(revision 7349)
@@ -7,5 +7,7 @@
 		var $id = 1000;
 		var $hilfeURL = 'http://wpshopgermany.de/?p=3886';
+		
 		static $arSMSStatus = [];
+		static $sms_endpoint = '';
 		
 		/**
Index: /mods/wpsg_mod_paypalapi.class.php
===================================================================
--- /mods/wpsg_mod_paypalapi.class.php	(revision 7348)
+++ /mods/wpsg_mod_paypalapi.class.php	(revision 7349)
@@ -1094,5 +1094,7 @@
 			$oOrder = wpsg_order::getInstance($order_id);
 			$access_token = $this->api_getAccessToken();
- 
+			
+			$order_id = $oOrder->createDB();
+			
 			$item_list = array(
 				'items' => array()
Index: /views/css/frontend.css
===================================================================
--- /views/css/frontend.css	(revision 7348)
+++ /views/css/frontend.css	(revision 7349)
@@ -70,5 +70,5 @@
 .basket_sum_wrap .wpsg_mod_basketteaser_row .valuel { width: 20%; display:inline-block; font-weight:normal; text-align:left; }
 .basket_sum_wrap .wpsg_gutschein_add {padding:0.75em 1em;}
-.procent_payship { font-size:0.75em; line-height:0.75em; color:#666666; displaY:block; }
+.procent_payship { font-size:0.75em; line-height:0.75em; color:#666666; displaY:block; margin-bottom:10px; }
 /* .glyphicon {width:20px !important; text-decoration:none; position:relative; display:inline-block; font-family:'Glyphicons Halflings'; line-height:1rem;} */
 
Index: /views/mods/mod_kundenkontakt/order_view.phtml
===================================================================
--- /views/mods/mod_kundenkontakt/order_view.phtml	(revision 7348)
+++ /views/mods/mod_kundenkontakt/order_view.phtml	(revision 7349)
@@ -176,79 +176,81 @@
 <?php echo wpsg_drawForm_AdminboxEnd(); ?>
 
-<?php echo wpsg_drawForm_AdminboxStart(__('SMS Versand', 'wpsg'));?>
-
-	<div class="inside">
-		<div style="padding:5px;">
-	
-			<form id="sms_form" method="post" action="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Order&action=ajax&mod=wpsg_mod_kundenkontakt&edit_id=<?php echo $this->view['data']['id']; ?>&do=sms_submit&noheader=1">
-	
-				<input type="hidden" name="_wpnonce" value="<?php echo \wp_create_nonce('wpsg_mod_kundenkontakt_sms_form_'.$this->view['data']['id']); ?>" />
-				
-				<p>Mit diesem Formular kann eine SMS an den Kunden versendet werden.</p>
-									
-				<br />
-			
-				<div id="numbercheck">
-					<?php if ($this->view['valid'] === true) { ?>
-					
-						<div class="alert alert-success">
-							<?php echo wpsg_translate(__('Die Telefonnummer #1# ist gÃŒltig.', 'wpsg'), $this->view['phone']); ?>
-						</div>
-						
-					<?php } else { ?>
-	
-						<div class="alert alert-danger">
-							<?php echo wpsg_translate(__('Die Telefonnummer #1# ist nicht gÃŒltig.', 'wpsg'), $this->view['phone']); ?>
-						</div>
-					
-					<?php } ?>
-				</div>			
-
-				<br />
-				
-				<?php echo wpsg_drawForm_Input('phone', __('EmpfÃ€nger', 'wpsg'), $this->view['phone']); ?>
-				
-				<br />
-	
-				<textarea id="text" name="text" <?php echo (($this->view['valid'] === true)?'':'disabled="disabled"'); ?> style="width:100%; height:100px;"></textarea>
-	
-				<input type="submit" id="sms_submit" <?php echo (($this->view['valid'] === true)?'':'disabled="disabled"'); ?> value="<?php echo __('SMS Senden', 'wpsg'); ?>" class="button" style="float:right; margin-top:15px;" />
-	
-				<script>
-					
-					jQuery('#phone').on('input', function() {
-
-						jQuery('#numbercheck').html('<img src="<?php echo WPSG_URL; ?>views/gfx/ajax-loader.gif" alt="<?php echo __('Bitte warten ...', 'wpsg'); ?>" />');
-						
-						jQuery('#text').prop('disabled', true);
-						jQuery('#sms_submit').prop('disabled', true);
-						
-						jQuery.ajax( {
-							url: '<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Order&action=ajax&mod=wpsg_mod_kundenkontakt&noheader=1&edit_id=<?php echo $_REQUEST['edit_id']; ?>&do=validateNumber',
-							data: {
-								'phone': jQuery('#phone').val()
-							},
-							success: function(data) {
-
-								if (data.valid) {
-								
-									jQuery('#text').prop('disabled', false);
-									jQuery('#sms_submit').prop('disabled', false);
+<?php if ($this->get_option('wpsg_mod_kundenkontakt_smsflatrate_active') === '1') { ?>
+	<?php echo wpsg_drawForm_AdminboxStart(__('SMS Versand', 'wpsg'));?>
+	
+		<div class="inside">
+			<div style="padding:5px;">
+		
+				<form id="sms_form" method="post" action="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Order&action=ajax&mod=wpsg_mod_kundenkontakt&edit_id=<?php echo $this->view['data']['id']; ?>&do=sms_submit&noheader=1">
+		
+					<input type="hidden" name="_wpnonce" value="<?php echo \wp_create_nonce('wpsg_mod_kundenkontakt_sms_form_'.$this->view['data']['id']); ?>" />
+					
+					<p>Mit diesem Formular kann eine SMS an den Kunden versendet werden.</p>
+										
+					<br />
+				
+					<div id="numbercheck">
+						<?php if ($this->view['valid'] === true) { ?>
+						
+							<div class="alert alert-success">
+								<?php echo wpsg_translate(__('Die Telefonnummer #1# ist gÃŒltig.', 'wpsg'), $this->view['phone']); ?>
+							</div>
+							
+						<?php } else { ?>
+		
+							<div class="alert alert-danger">
+								<?php echo wpsg_translate(__('Die Telefonnummer #1# ist nicht gÃŒltig.', 'wpsg'), $this->view['phone']); ?>
+							</div>
+						
+						<?php } ?>
+					</div>			
+	
+					<br />
+					
+					<?php echo wpsg_drawForm_Input('phone', __('EmpfÃ€nger', 'wpsg'), $this->view['phone']); ?>
+					
+					<br />
+		
+					<textarea id="text" name="text" <?php echo (($this->view['valid'] === true)?'':'disabled="disabled"'); ?> style="width:100%; height:100px;"></textarea>
+		
+					<input type="submit" id="sms_submit" <?php echo (($this->view['valid'] === true)?'':'disabled="disabled"'); ?> value="<?php echo __('SMS Senden', 'wpsg'); ?>" class="button" style="float:right; margin-top:15px;" />
+		
+					<script>
+						
+						jQuery('#phone').on('input', function() {
+	
+							jQuery('#numbercheck').html('<img src="<?php echo WPSG_URL; ?>views/gfx/ajax-loader.gif" alt="<?php echo __('Bitte warten ...', 'wpsg'); ?>" />');
+							
+							jQuery('#text').prop('disabled', true);
+							jQuery('#sms_submit').prop('disabled', true);
+							
+							jQuery.ajax( {
+								url: '<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Order&action=ajax&mod=wpsg_mod_kundenkontakt&noheader=1&edit_id=<?php echo $_REQUEST['edit_id']; ?>&do=validateNumber',
+								data: {
+									'phone': jQuery('#phone').val()
+								},
+								success: function(data) {
+	
+									if (data.valid) {
+									
+										jQuery('#text').prop('disabled', false);
+										jQuery('#sms_submit').prop('disabled', false);
+										
+									}
+	
+									jQuery('#numbercheck').html(data.text);
 									
 								}
-
-								jQuery('#numbercheck').html(data.text);
-								
-							}
+							} );
+							
 						} );
 						
-					} );
-					
-				</script>
-				
-			</form>		
-		
+					</script>
+					
+				</form>		
+			
+			</div>
 		</div>
-	</div>
-
-<?php echo wpsg_drawForm_AdminboxEnd(); ?>
+	
+	<?php echo wpsg_drawForm_AdminboxEnd(); ?>
+<?php } ?>
Index: /views/order/product_table.phtml
===================================================================
--- /views/order/product_table.phtml	(revision 7348)
+++ /views/order/product_table.phtml	(revision 7349)
@@ -120,7 +120,15 @@
 					<?php } ?>
 					<td>1</td>
-					<td class="wpsg_cell_mwst_value wpsg_cell_gesamtpreis">
-						<?php echo wpsg_ff($arCalculation['sum']['voucher_'.$display]); ?> <?php echo $this->get_option('wpsg_currency'); ?>
-					</td>
+					<td class="wpsg_cell_mwst_value wpsg_cell_gesamtpreis"><?php 
+							
+						echo wpsg_ff($arCalculation['sum']['voucher_'.$display]); ?> <?php echo $this->get_option('wpsg_currency');
+						
+						if (strpos($arCalculation['voucher'][0]['set'], '%') !== false) { 
+
+							echo '<span class="procent_payship">('.wpsg_ff(wpsg_tf($arCalculation['voucher'][0]['set']), '%').')</span>';
+
+						} 
+							
+					?></td>
 				</tr>
 			
Index: /views/warenkorb/basket.phtml
===================================================================
--- /views/warenkorb/basket.phtml	(revision 7348)
+++ /views/warenkorb/basket.phtml	(revision 7349)
@@ -142,30 +142,27 @@
 			<?php $bLine = false; ?>
 			<?php if (isset($this->view['basket']['gs'])) { $bLine = true; ?>
-				<div class="basket_sum_row">
-					<div class="titlegs">
+				
+				<div class="basket_sum_row">
+					<div class="title">
+						<a class="wpsg_basket_removelink" href="<?php echo str_replace('&', '&amp;', $this->getRemoveLinkURL('gs')); ?>" title="<?php echo __('Gutschein aus dem Warenkorb entfernen', 'wpsg'); ?>" onclick="return confirm('<?php echo __('Sind Sie sich sicher, dass sie den Gutschein aus dem Warenkorb entfernen mÃ¶chten?', 'wpsg'); ?>');"><span class="glyphicon glyphicon-trash"></span></a>
 						<?php echo __('Gutschein', 'wpsg'); ?> <?php echo ($this->view['basket']['gs']['code'] != '')? '('.$this->view['basket']['gs']['code'].')':'' ?>
 					</div>
-					<div class="wpsg_basket_removelink">
-						<a class="wpsg_basket_removelink" href="<?php echo str_replace('&', '&amp;', $this->getRemoveLinkURL('gs')); ?>" title="<?php echo __('Gutschein aus dem Warenkorb entfernen', 'wpsg'); ?>" onclick="return confirm('<?php echo __('Sind Sie sich sicher, dass sie den Gutschein aus dem Warenkorb entfernen mÃ¶chten?', 'wpsg'); ?>');">
-							<!-- <img src="<?php echo WPSG_URL; ?>views/gfx/bin_x.png" alt="<?php echo __('LÃ¶schen', 'wpsg'); ?>" /> -->
-							<span class="glyphicon glyphicon-trash"></span>
-						</a>
-					</div>
-				</div>
-				<div class="basket_sum_row">
-					<div class="delgs">&nbsp;</div>
-					<div class="colgsl">1</div>
-					<div class="colgsl">
-						<?php if ($this->view['basket']['gs']['calc'] == 'p') { ?>
-						<?php echo '-'.wpsg_ff($this->view['basket']['gs']['value'], '%'); ?>
-						<?php } else { ?>
-						<?php echo '-'.wpsg_ff($this->view['basket']['sum']['gs'], $this->get_option('wpsg_currency')); ?>
-						<?php } ?>
-					</div>
-				<?php if (sizeof($this->view['basket']['mwst']) > 1 || $this->get_option('wpsg_showMwstAlways') == '1') { ?>
-				<div class="colgsr"><?php echo __('anteilig', 'wpsg'); ?></div>
-				<?php } ?>
-				<div class="colgsr"><?php echo '-'.wpsg_ff($this->view['basket']['sum']['gs'], $this->get_option('wpsg_currency')); ?></div>
-			</div>
+					<?php if (sizeof($this->view['basket']['mwst']) > 1 || $this->get_option('wpsg_showMwstAlways') == '1') { ?>
+						<div class="colgsr"><?php echo __('anteilig', 'wpsg'); ?></div>
+					<?php } ?>
+					<div class="value"><?php
+							
+						echo '-'.wpsg_ff($this->view['basket']['sum']['gs'], $this->get_option('wpsg_currency'));
+						
+						if (strpos($this->view['basket']['arCalculation']['voucher'][0]['set'], '%') !== false) {
+							
+							echo '<span class="procent_payship">('.wpsg_ff(wpsg_tf($this->view['basket']['arCalculation']['voucher'][0]['set']), '%').')</span>';
+							
+						}
+					
+					?></div>
+					
+				</div>
+				
 			<?php } ?>
 
Index: /views/warenkorb/overview.phtml
===================================================================
--- /views/warenkorb/overview.phtml	(revision 7348)
+++ /views/warenkorb/overview.phtml	(revision 7349)
@@ -270,23 +270,19 @@
 			<?php if (isset($this->view['basket']['gs'])) { $bLine = true; ?>
 				<div class="overview_sum_row">
-					<div class="titlegs">
+					<div class="title">
 						<?php echo __('Gutschein', 'wpsg'); ?> <?php echo ($this->view['basket']['gs']['code'] != '')? '('.$this->view['basket']['gs']['code'].')':'' ?>
 					</div>
-				</div>
-				<div class="overview_sum_row">
-					<div class="delgs">&nbsp;</div>
-					<div class="colgsl">1</div>
-					<div class="colgsl">
-						<?php if ($this->view['basket']['gs']['calc'] == 'p') { ?>
-						<?php echo '-'.wpsg_ff($this->view['basket']['gs']['value'], '%'); ?>
-						<?php } else { ?>
-						<?php echo '-'.wpsg_ff($this->view['basket']['sum']['gs'], $this->get_option('wpsg_currency')); ?>
-						<?php } ?>
-					</div>
-				<?php if (sizeof($this->view['basket']['mwst']) > 1 || $this->get_option('wpsg_showMwstAlways') == '1') { ?>
-				<div class="colgsr"><?php echo __('anteilig', 'wpsg'); ?></div>
-				<?php } ?>
-				<div class="colgsr"><?php echo '-'.wpsg_ff($this->view['basket']['sum']['gs'], $this->get_option('wpsg_currency')); ?></div>
-			</div>
+					<div class="value"><?php 
+							
+						echo '-'.wpsg_ff($this->view['basket']['sum']['gs'], $this->get_option('wpsg_currency'));
+							
+						if (strpos($this->view['basket']['arCalculation']['voucher'][0]['set'], '%') !== false) {
+							
+							echo '<span class="procent_payship">('.wpsg_ff(wpsg_tf($this->view['basket']['arCalculation']['voucher'][0]['set']), '%').')</span>';
+							
+						}
+							
+					?></div>					
+				</div>
 			<?php } ?>
 
