Index: /controller/wpsg_ProduktController.class.php
===================================================================
--- /controller/wpsg_ProduktController.class.php	(revision 5449)
+++ /controller/wpsg_ProduktController.class.php	(revision 5450)
@@ -505,4 +505,20 @@
 			}
 			
+			$this->shop->view['partikel_select'] = array();
+			
+			$arArtikel = get_posts('numberposts=-1'); if (wpsg_isSizedArray($arArtikel)) {
+				
+				$this->shop->view['partikel_select']['article'] = array(__('Artikel', 'wpsg'), array());				
+				foreach ($arArtikel as $a) $this->shop->view['partikel_select']['article'][1][$a->ID] = $a->post_title;
+				
+			}
+			
+			$arPages = get_pages(); if (wpsg_isSizedArray($arPages)) { 
+			
+				$this->shop->view['partikel_select']['pages'] = array(__('Seiten', 'wpsg'), array());				
+				foreach ($arPages as $p) $this->shop->view['partikel_select']['pages'][1][$p->ID] = $p->post_title;
+			
+			}
+			 
 			$this->shop->view['arSubAction'] = array(
 				'general' => array(
@@ -510,5 +526,25 @@
 					'content' => $this->shop->render(WPSG_PATH_VIEW.'/produkt/addedit_general.phtml', false)
 				)
-			);			
+			);
+			
+			$this->shop->view['arSubAction']['texte'] = array(
+				'title' => __('Texte', 'wpsg'),
+				'content' => $this->shop->render(WPSG_PATH_VIEW.'/produkt/addedit_texte.phtml', false)				
+			);
+			
+			if (!isset($_REQUEST['wpsg_lang'])) 
+			{
+				
+				$this->shop->view['arSubAction']['price'] = array(
+					'title' => __('Preis / Steuer', 'wpsg'),
+					'content' => $this->shop->render(WPSG_PATH_VIEW.'/produkt/addedit_price.phtml', false)
+				);
+				
+				$this->shop->view['arSubAction']['payship'] = array(
+					'title' => __('Versand-/ Zahlungsarten', 'wpsg'),
+					'content' => $this->shop->render(WPSG_PATH_VIEW.'/produkt/addedit_payship.phtml', false)
+				);
+				
+			}
 			
 			$this->shop->callMods('product_addedit_content', array(&$this->shop->view['arSubAction'], &$this->shop->view['data']));
@@ -723,5 +759,5 @@
 		{
 			
-			if ($_REQUEST['wpsg_mode'] == 'filterDialog')
+			if (wpsg_isSizedString($_REQUEST['wpsg_mode'], 'filterDialog'))
 			{
 				
@@ -729,5 +765,5 @@
 				
 			}
-			else if ($_REQUEST['wpsg_mode'] == 'filter')
+			else if (wpsg_isSizedString($_REQUEST['wpsg_mode'], 'filter'))
 			{
  
Index: /lib/functions.inc.php
===================================================================
--- /lib/functions.inc.php	(revision 5449)
+++ /lib/functions.inc.php	(revision 5450)
@@ -1002,5 +1002,5 @@
 	{
 		
-		if (!isset($value) || !is_string($value)) return $default;
+		if (!isset($value) || !wpsg_isSizedString($value)) return $default;
 		
 		return $value;		
Index: /lib/helper_functions.inc.php
===================================================================
--- /lib/helper_functions.inc.php	(revision 5449)
+++ /lib/helper_functions.inc.php	(revision 5450)
@@ -430,5 +430,5 @@
 		$TC->view['field_name'] = $field_name;
 		$TC->view['field_label'] = $field_label;
-		$TC->view['field_id'] = wpsg_drawForm_getID($field_name);
+		$TC->view['field_id'] = wpsg_getStr($conf['id'], wpsg_drawForm_getID($field_name));
 		$TC->view['field_checked'] = $field_checked;
 		$TC->view['field_config'] = $conf;
@@ -611,5 +611,5 @@
 	} // function wpsg_drawForm_TextStart()
 	
-	function wpsg_drawForm_TextEnd($field_label)
+	function wpsg_drawForm_TextEnd($field_label, $field_config = array())
 	{
 	
@@ -618,5 +618,5 @@
 		$TC->view['field_label'] = $field_label;
 		$TC->view['field_value'] = ob_get_contents();
-		$TC->view['field_config'] = array();
+		$TC->view['field_config'] = $field_config;
 		
 		ob_end_clean();
Index: /views/admin/form/adminbox.phtml
===================================================================
--- /views/admin/form/adminbox.phtml	(revision 5449)
+++ /views/admin/form/adminbox.phtml	(revision 5450)
@@ -1,5 +1,5 @@
 <div class="panel panel-default">
-	<div class="panel-heading clearfix">
-		<h3 class="panel-title"><?php $this->view['title']; ?></h3>
+	<div class="panel-heading clearfix">	
+		<h3 class="panel-title"><?php echo $this->view['title']; ?></h3>
 	</div>
 	<div class="panel-body"><?php echo $this->view['content']; ?></div>
Index: /views/admin/form/checkbox.phtml
===================================================================
--- /views/admin/form/checkbox.phtml	(revision 5449)
+++ /views/admin/form/checkbox.phtml	(revision 5450)
@@ -10,8 +10,8 @@
 		<div class="checkbox">
 			<label>
-			
+
 				<div class="wpsg_field_wrap">
 					<input type="hidden" name="<?php echo $this->view['field_name']; ?>" value="0" />
-					<input type="checkbox" id="<?php echo $this->view['field_id']; ?>" name="<?php echo $this->view['field_name']; ?>" value="1" <?php echo (($this->view['field_checked'] > 0)?'checked="checked"':''); ?> />
+					<input type="checkbox" id="<?php echo $this->view['field_id']; ?>" name="<?php echo $this->view['field_name']; ?>" value="<?php echo wpsg_getStr($this->view['field_config']['value'], '1'); ?>" <?php echo (($this->view['field_checked'] > 0)?'checked="checked"':''); ?> />
 				
 					<?php echo $this->view['field_label']; ?>
Index: /views/admin/form/input.phtml
===================================================================
--- /views/admin/form/input.phtml	(revision 5449)
+++ /views/admin/form/input.phtml	(revision 5450)
@@ -6,5 +6,15 @@
 	
 		<div class="wpsg_field_wrap">
-			<input type="text" class="form-control input-sm" name="<?php echo $this->view['field_name']; ?>" value="<?php echo wpsg_hspc($this->view['field_value']); ?>" id="<?php echo $this->view['field_id']; ?>" />
+			<input 
+				type="text" 
+				class="form-control input-sm" 
+				name="<?php echo $this->view['field_name']; ?>" 
+				value="<?php echo wpsg_hspc($this->view['field_value']); ?>" 
+				id="<?php echo $this->view['field_id']; ?>"
+				placeholder="<?php echo wpsg_getStr($this->view['field_config']['placeholder']); ?>" 
+				<?php if (wpsg_isTrue($this->view['field_config']['readonly'])) { ?>
+				readonly="readonly"
+				<?php } ?>
+				/>
 			<?php if (wpsg_isSizedString($this->view['field_config']['help'])) { ?>
 				<a href="#" data-wpsg-tip="<?php echo $this->view['field_config']['help']; ?>" rel="?page=wpsg-Admin&subaction=loadHelp&noheader=1&field=<?php echo $this->view['field_config']['help']; ?>" class="glyphicon glyphicon glyphicon-info-sign form-control-feedback" aria-hidden="true"></a>
Index: /views/admin/form/select.phtml
===================================================================
--- /views/admin/form/select.phtml	(revision 5449)
+++ /views/admin/form/select.phtml	(revision 5450)
@@ -8,7 +8,53 @@
 		
 			<select id="<?php echo $this->view['field_id']; ?>" name="<?php echo $this->view['field_name']; ?>" class="form-control input-sm" <?php echo $this->view['atts_select']; ?>>
-				<?php foreach ($this->view['field_values'] as $k => $v) { ?>
-				<option <?php echo (($k == $this->view['field_value'])?'selected="selected"':''); ?> value="<?php echo wpsg_hspc($k); ?>"><?php echo wpsg_hspc($v); ?></option>
+				
+				<?php 
+				
+					if (wpsg_isTrue($this->view['field_config']['optgroup'])) 
+					{ 
+				
+						$arGroup = array();
+						
+						foreach ($this->view['field_values'] as $k_group => $v_group)
+						{
+							
+							$arGroup[$k_group] = $v_group[0];
+							$arValues[$k_group] = $v_group[1];
+							
+						}
+				
+					}
+					else
+					{
+						
+						$arValues = array($this->view['field_values']);
+						$arGroup = null;
+						
+					}
+				
+				?>
+				
+				<?php foreach ($arValues as $k_group => $v_group) { ?>
+				
+					<?php if (!is_null($arGroup)) { ?><optgroup label="<?php echo $arGroup[$k_group]; ?>"><?php } ?>
+				
+					<?php foreach ($v_group as $k => $v) { ?>
+					<option <?php 
+					
+						if (wpsg_isTrue($this->view['field_config']['noKeys']) && wpsg_isSizedString($v, $this->view['field_value'])) echo ' selected="selected" ';
+						else echo (($k == $this->view['field_value'])?'selected="selected"':''); 
+						
+					?> value="<?php 
+					
+						if (wpsg_isTrue($this->view['field_config']['noKeys'])) echo wpsg_hspc($v);
+						else echo wpsg_hspc($k); 
+						
+					?>"><?php echo wpsg_hspc($v); ?></option>
+					<?php } ?>
+					
+					<?php if (!is_null($arGroup)) { ?></optgroup><?php } ?>
+					
 				<?php } ?>
+				
 			</select>
 			
Index: /views/admin/form/text.phtml
===================================================================
--- /views/admin/form/text.phtml	(revision 5449)
+++ /views/admin/form/text.phtml	(revision 5450)
@@ -1,8 +1,14 @@
-<div class="form-group form-group-sm">
+<div class="form-group form-group-sm <?php echo ((wpsg_isSizedString($this->view['field_config']['help']))?'has-feedback':''); ?> <?php echo wpsg_getStr($this->view['field_config']['class_wrap']); ?>">
 
-	<label class="control-label col-sm-6" for=""><?php echo $this->view['field_label']; ?></label>
+	<label class="col-sm-6 control-label" for=""><?php echo $this->view['field_label']; ?></label>
 	
-	<div class="col-sm-6">
-		<p class="form-control-static"><?php echo $this->view['field_value']; ?></p>
+	<div class="col-sm-6 <?php echo wpsg_getStr($this->view['field_config']['class_content_wrap']); ?>">
+		<div class="wpsg_field_wrap">
+			<p class="form-control-static"><?php echo $this->view['field_value']; ?></p>
+				
+			<?php if (wpsg_isSizedString($this->view['field_config']['help'])) { ?>
+				<a href="#" data-wpsg-tip="<?php echo $this->view['field_config']['help']; ?>" rel="?page=wpsg-Admin&subaction=loadHelp&noheader=1&field=<?php echo $this->view['field_config']['help']; ?>" class="glyphicon glyphicon glyphicon-info-sign form-control-feedback" aria-hidden="true"></a>
+			<?php } ?>
+		</div>
 	</div>
 	
Index: /views/css/admin.css
===================================================================
--- /views/css/admin.css	(revision 5449)
+++ /views/css/admin.css	(revision 5450)
@@ -22,4 +22,8 @@
 #wpsg-bs .form-horizontal .editable { padding-top:0px; }
 #wpsg-bs .wpsg-glyphicon { margin-right:10px; }
+#wpsg-bs .wpsg_error { color:red; }
+#wpsg-bs .form-group-sm .form-control { padding-left:8px; }
+#wpsg-bs .form-select .form-control { padding-left:5px; } 
+#wpsg-bs .form-group-sm .form-control-static { padding-left:10px; height:auto; }
 
 /* Inline Edit */
@@ -37,4 +41,5 @@
 #wpsg-bs .wpsg-help-content { max-height:500px; overflow:auto; }
 #wpsg-bs .wpsg-help-content h1 { font-size:16px; font-weight:bold; }
+#wpsg-bs .wpsg-help-content h2 { font-size:14px; font-weight:bold; }
 
 /* Formulare NEU */
Index: /views/produkt/_addedit.phtml
===================================================================
--- /views/produkt/_addedit.phtml	(revision 5449)
+++ /views/produkt/_addedit.phtml	(revision 5450)
@@ -175,98 +175,5 @@
 				<div id="side-info-column" class="inner-sidebar" style="width:386px;">
 					<div id="side-sortables" class="meta-box-sortables ui-sortable" style="width:380px;">
-								
-						<?php if (!isset($_REQUEST['wpsg_lang'])) { ?>
-						<div id="wpsg_preis" class="postbox">						
-							<h3 class="wpsg_handlediv">
-								<div class="handlediv" title="<?php echo __('Zum Ein/Ausklappen hier klicken', 'wpsg'); ?>"><br /></div>
-								<span><?php echo __('Preis / Steuer', 'wpsg'); ?></span>
-							</h3>
-							<div class="inside">
-								<?php echo wpsg_drawForm_Select('mwst_key', __('Steuergruppe', 'wpsg'), wpsg_tax_groups(true), @$this->view['data']['mwst_key']); ?>								
-								<?php echo wpsg_drawForm_Input('preis', wpsg_translate(__('Preis (#1#)', 'wpsg'), (($this->getBackendTaxview() === WPSG_NETTO)?'NETTO':'BRUTTO')), wpsg_ff($this->view['data']['preis'])); ?>
-								<?php echo wpsg_drawForm_Input('oldprice', wpsg_translate(__('Alter Preis (#1#)', 'wpsg'), (($this->getBackendTaxview() === WPSG_NETTO)?'NETTO':'BRUTTO')), wpsg_ff($this->view['data']['oldprice'])); ?>
-								<?php echo wpsg_drawForm_Input('', __('Steueranteil', 'wpsg'), wpsg_ff(@$this->view['data']['tax_sum_value'], $this->get_option('wpsg_currency')).' / '.$this->getDefaultCountry()->kuerzel, array('text' => true)); ?>
-								<?php echo wpsg_drawForm_Checkbox('euleistungsortregel', __('Produkt unterliegt den EU-Leistungsortregeln', 'wpsg'), @$this->view['data']['euleistungsortregel'], array('fullrow' => true, 'help' => 'EU-Leistungsortregel')); ?>
-								<a href="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Admin&amp;subaction=laender">LÃ€nderverwaltung</a>							
-							</div>
-						</div>
-						<div id="wpsg_paymentmethods" class="postbox">						
-							<h3 class="wpsg_handlediv">
-								<div class="handlediv" title="<?php echo __('Zum Ein/Ausklappen hier klicken', 'wpsg'); ?>"><br /></div>
-								<span><?php echo __('Erlaubte Zahlungsarten', 'wpsg'); ?></span>
-							</h3>
-							<div class="inside wpsg_form_field_max">	
-								<select id="wpsg_paymentmethods_select" name="wpsg_paymentmethods_select">
-									<option value="0"><?php echo __('Alle', 'wpsg'); ?></option>
-									<option value="1" <?php echo ((wpsg_isSizedArray($this->view['allowedPayment']))?'selected="selected"':''); ?>><?php echo __('Auswahl', 'wpsg'); ?></option>
-								</select>
-								<div class="wpsg_paymentmethods_select">
-									<?php foreach ($this->arPayment as $p) { if (!isset($p['deleted']) || $p['deleted'] != '1') { ?>
-										<?php echo wpsg_drawForm_Checkbox('wpsg_paymentmethods[]', $p['name'], in_array($p['id'], (array)$this->view['allowedPayment']), array('id' => 'wpsg_paymentmethods_'.$p['id'], 'value' => $p['id'])); ?>
-									<?php } } ?>
-								</div>
-								
-								<script type="text/javascript">/* <![CDATA[ */
-	
-									jQuery('#wpsg_paymentmethods_select').bind('change', function() {
-	
-										if (jQuery(this).val() == '1')
-										{
-	
-											jQuery('.wpsg_paymentmethods_select').show();
-											
-										}
-										else
-										{
-	
-											jQuery('.wpsg_paymentmethods_select').hide();
-											
-										}
-										
-									} ).change();
-								
-								/* ]]> */</script>
-							</div>
-						</div>
-						<div id="wpsg_shippingmethods" class="postbox">
-							<h3 class="wpsg_handlediv">
-								<div class="handlediv" title="<?php echo __('Zum Ein/Ausklappen hier klicken', 'wpsg'); ?>"><br /></div>
-								<span><?php echo __('Erlaubte Versandarten', 'wpsg'); ?></span>
-							</h3>
-							<div class="inside wpsg_form_field_max">
-								<select id="wpsg_shippingmethods_select" name="wpsg_shippingmethods_select">
-									<option value="0"><?php echo __('Alle', 'wpsg'); ?></option>
-									<option value="1" <?php echo ((wpsg_isSizedArray($this->view['allowedShipping']))?'selected="selected"':''); ?>><?php echo __('Auswahl', 'wpsg'); ?></option>								
-								</select>
-								<div class="wpsg_shippingmethods_select">
-									<?php foreach ($this->arShipping as $s) { if (!isset($s['deleted']) || $s['deleted'] != '1') { ?>
-										<?php echo wpsg_drawForm_Checkbox('wpsg_shippingmethods[]', $s['name'], in_array($s['id'], (array)$this->view['allowedShipping']), array('id' => 'wpsg_paymentmethods_'.$s['id'], 'value' => $s['id'])); ?>
-									<?php } } ?>
-								</div>
-							</div>
-							
-							<script type="text/javascript">/* <![CDATA[ */
-	
-								jQuery('#wpsg_shippingmethods_select').bind('change', function() {
-	
-									if (jQuery(this).val() == '1')
-									{
-	
-										jQuery('.wpsg_shippingmethods_select').show();
-										
-									}
-									else
-									{
-	
-										jQuery('.wpsg_shippingmethods_select').hide();
-										
-									}
-									
-								} ).change();
-							
-							/* ]]> */</script>
-						</div>
-						<?php } ?>
-											
+																			
 						<?php $this->callMods('produkt_edit_sidebar', array(&$this->view['data'])); ?>
 						 
@@ -275,223 +182,12 @@
 			
 				<div id="post-body">
-					
-					<div id="titlediv" style="margin-right:400px;">
-						<div id="titlewrap">					
-							<input type="text" placeholder="<?php echo __('Produktname', 'wpsg'); ?>" id="title" value="<?php echo wpsg_hspc(@$this->view['data']['name']); ?>" tabindex="1" size="30" name="name">
-						</div>
-					</div>
-					
-					<br />
-									
+							
 					<div id="normal-sortables" class="meta-box-sortables" style="margin-right:400px;">
-							
-						<div id="wpsg_generally" class="postbox">		
-							<h3 class="wpsg_handlediv">
-								<span title="<?php echo __('Zum Ein/Ausklappen hier klicken', 'wpsg'); ?>" class="handlediv"><br /></span>
-								<span><?php echo __('Allgemein', 'wpsg'); ?></span>
-							</h3>
-							<div class="inside">
-								<?php if ($this->isMultiLingual()) { ?>
-								<div class="wpsg_form_field">
-									<div class="wpsg_form_left">
-										<label for="produkt_anr"><?php echo __("Ãbersetzungen", "wpsg"); ?>:</label>
-									</div>								
-									<div class="wpsg_form_right wpsg_form_language">																											
-										<?php foreach ($this->getStoreLanguages() as $a) { ?>
-											<?php if ((isset($_REQUEST['wpsg_lang']) && $_REQUEST['wpsg_lang'] != $a['locale']) || (!isset($_REQUEST['wpsg_lang']) && $a['lang'] != $GLOBALS['q_config']['default_language'])) { ?>
-											<?php if (isset($_REQUEST['wpsg_lang']) && $a['lang'] == $GLOBALS['q_config']['default_language']) { ?>
-											<a href="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Produkt&action=edit&edit_id=<?php echo $_REQUEST['edit_id']; ?>" title="<?php echo wpsg_translate(__('Zu Sprache #1# wechseln.', 'wpsg'), $a['name']); ?>">
-											<?php } else { ?>
-											<a href="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Produkt&action=edit&edit_id=<?php echo $_REQUEST['edit_id']; ?>&wpsg_lang=<?php echo $a['locale']; ?>" title="<?php echo wpsg_translate(__('Zu Sprache #1# wechseln.', 'wpsg'), $a['name']); ?>">
-											<?php } ?>
-												<img src="<?php echo $this->getFlagURL().$a['flag']; ?>" alt="<?php echo wpsg_translate(__('Zu Sprache #1# wechseln.', 'wpsg'), $a['name']); ?>" />
-											</a>
-											<?php } ?>
-										<?php } ?>
-									</div>
-									<div class="wpsg_clear"></div>
-								</div>
-								<?php } ?>
-								<div class="wpsg_form_field">
-									<div class="wpsg_form_left">
-										<label for="produkt_anr"><?php echo __("Produktname (Detail)", "wpsg"); ?>:</label>
-									</div>
-									<div class="wpsg_form_right">
-										<input id="detailname" type="text" value="<?php echo wpsg_hspc(@$this->view['data']['detailname']); ?>" name="detailname" />
-									</div>
-									<div class="wpsg_clear"></div>
-								</div>
-								<?php if (wpsg_isSizedInt($this->view['data']['id']) && !isset($_REQUEST['wpsg_lang'])) { ?>
-								<div class="wpsg_form_field">
-									<div class="wpsg_form_left">
-										<label for="produkt_id"><?php echo __('Produkt ID', 'wpsg'); ?>:</label>
-									</div>
-									<div class="wpsg_form_right">
-										<input type="text" name="produkt_id" value="<?php echo wpsg_hspc(@$this->view['data']['id']); ?>" readonly="readonly" />
-									</div>
-									<div class="wpsg_clear"></div>
-								</div>
-								<?php } ?>
-								<?php if (!isset($_REQUEST['wpsg_lang'])) { ?>
-								<div class="wpsg_form_field">
-									<div class="wpsg_form_left">
-										<label for="produkt_anr"><?php echo __("Artikelnummer", "wpsg"); ?>:</label>
-									</div>
-									<div class="wpsg_form_right">
-										<input id="produkt_anr" type="text" value="<?php echo wpsg_hspc(@$this->view['data']['anr']); ?>" name="anr" />
-									</div>
-									<div class="wpsg_clear"></div>
-								</div>
-								<div class="wpsg_form_field">
-									<div class="wpsg_form_left">
-										<label for="produkt_ptemplate"><?php echo __('Produkttemplate', 'wpsg'); ?>:</label>									
-									</div>
-									<div class="wpsg_form_right">
-										<?php if (!is_array($this->view['templates']) || sizeof($this->view['templates']) <= 0) { ?>
-										<p class="wpsg_error"><?php echo __('Keine Templatedatein gefunden!', 'wpsg'); ?></p>
-										<?php } else { ?>
-										<select name="ptemplate_file" id="produkt_ptemplate">
-											<?php foreach ($this->view['templates'] as $t) { ?>
-											<option <?php echo (($t == @$this->view['data']['ptemplate_file'] || (!isset($this->view['data']['ptemplate_file']) && $t == 'standard.phtml'))?'selected="selected"':''); ?> value="<?php echo wpsg_hspc($t); ?>"><?php echo wpsg_hspc($t); ?></option>
-											<?php } ?>
-										</select>
-										<?php } ?>
-									</div>
-									<div class="wpsg_clear"></div>
-								</div>
-								<div class="wpsg_form_field">
-									<div class="wpsg_form_left">
-										<label for="produkt_ptemplate"><?php echo __('URL Benachrichtigung', 'wpsg'); ?>:</label>									
-									</div>
-									<div class="wpsg_form_right">
-										<input style="width:95%;" type="text" name="posturl" class="wpsg_posturl" value="<?php echo wpsg_hspc(@$this->view['data']['posturl']); ?>" />
-										<div class="wpsg_clear" style="height:7px;"></div>
-										<label><input type="checkbox" <?php echo ((@$this->view['data']['posturl_verkauf'] == '1')?'checked="checked"':''); ?> value="1" name="posturl_verkauf" style="width:auto; float:none;" />&nbsp;<?php echo __('beim Verkauf', 'wpsg'); ?></label>
-										&nbsp;&nbsp;
-										<label><input type="checkbox" <?php echo ((@$this->view['data']['posturl_bezahlung'] == '1')?'checked="checked"':''); ?> value="1" name="posturl_bezahlung" style="width:auto; float:none;" />&nbsp;<?php echo __('bei Bezahlung', 'wpsg'); ?></label>
-										<a rel="?page=wpsg-Admin&subaction=loadHelp&noheader=1&field=URLBenachrichtigung" href="?page=wpsg-Admin&subaction=loadHelp&noheader=1&field=URLBenachrichtigung" class="wpsg_form_help"></a>									 						 
-									</div>
-									<div class="wpsg_clear"></div>
-								</div>	
-								<?php } ?>
-								
-								<?php if (!$this->hasMod('wpsg_mod_produktartikel') && !isset($_REQUEST['wpsg_lang'])) { ?>
-								<div class="wpsg_form_field">
-									<div class="wpsg_form_left">
-										<label for="partikel"><?php echo __('Zugeordneter Wordpress Artikel', 'wpsg'); ?>:</label>
-									</div>								
-									<div class="wpsg_form_right">
-										<select id="partikel" name="partikel">
-											<option value=""><?php echo __("Bitte auswÃ€hlen", "wpsg"); ?></option>									
-											<?php $arArtikel = get_posts('numberposts=-1'); if (is_array($arArtikel) && sizeof($arArtikel) > 0) { ?>
-											<optgroup label="<?php echo __('Artikel', 'wpsg'); ?>">
-												<?php foreach ($arArtikel as $a) { ?>
-												<option <?php echo (($a->ID == $this->view['data']['partikel'])?'selected="selected"':''); ?> value="<?php echo $a->ID; ?>"><?php echo $a->post_title; ?></option>
-												<?php } ?>
-											</optgroup>
-											<?php } ?>
-											<?php $arPages = get_pages(); if (is_array($arPages) && sizeof($arPages) > 0) { ?>
-											<optgroup label="<?php echo __('Seiten', 'wpsg'); ?>">
-												<?php foreach ($arPages as $p) { ?>
-												<option <?php echo (($p->ID == $this->view['data']['partikel'])?'selected="selected"':''); ?> value="<?php echo $p->ID; ?>"><?php echo $p->post_title; ?></option>
-												<?php } ?>
-											</optgroup>
-											<?php } ?>
-										</select>
-									</div>
-									<div class="wpsg_clear"></div>
-								</div>
-								<?php } ?>
-								
-								<?php if (!isset($_REQUEST['wpsg_lang'])) { ?>
-								<?php echo wpsg_drawForm_Select('basket_multiple', __('Verhalten im Warenkorb', 'wpsg'), array(
-									'0' => __('Nur einmal mit beliebiger Menge (Standard)', 'wpsg'),
-									'4' => __('Nur einmal mit Menge 1', 'wpsg'),
-									'1' => __('Mehrfach mit beliebiger Menge', 'wpsg'),
-									'2' => __('Mehrfach mit Menge 1', 'wpsg')
-								), @$this->view['data']['basket_multiple'], array('help' => 'basket_multiple')); ?>							
-								<?php } ?>
-								 
-								<?php if ($this->view['data']['id'] > 0) { ?>
-								<div class="wpsg_form_field">
-									<div class="wpsg_form_left">
-										<label for="produkt_ptemplate"><?php echo __('URL', 'wpsg'); ?>:</label>									
-									</div>
-									<div class="wpsg_form_right">	
-										<p>									
-											<a href="<?php echo $this->getProduktLink(array('id' => ((wpsg_isSizedInt($this->view['data']['lang_parent']))?$this->view['data']['lang_parent']:$this->view['data']['id']))); ?>"><?php echo $this->getProduktLink(array('id' => ((wpsg_isSizedInt($this->view['data']['lang_parent']))?$this->view['data']['lang_parent']:$this->view['data']['id']))); ?></a>
-										</p>
-									</div>
-									<div class="wpsg_clear"></div>
-								</div>	
-								<?php } ?>
-								
-								<?php $this->callMods('produkt_edit_allgemein', array(&$this->view['data'])); ?>
-								
-							</div>
-						</div>
-					
-						<div id="wpsg_description" class="postbox">		
-							<h3 class="wpsg_handlediv">
-								<span title="<?php echo __('Zum Ein/Ausklappen hier klicken', 'wpsg'); ?>" class="handlediv"><br /></span>
-								<span><?php echo __('Beschreibung', 'wpsg'); ?></span>
-							</h3>	
-							<div class="inside">
-							 
-								<?php 
-								
-								function wpsg_ShowTinyMCE() { 
-									
-									 
-									
-									wp_print_scripts('editor');
-									if (function_exists('add_thickbox')) add_thickbox();
-									wp_print_scripts('media-upload');
-									if (function_exists('wp_tiny_mce')) wp_tiny_mce();
-									wp_admin_css();
-									
-									do_action("admin_print_styles-post-php");
-									do_action('admin_print_styles');
-									
-								}
-								
-								function wpsg_formatTinyMCE($in)
-								{
-									
-									if (isset($in['theme_advanced_buttons1'])) $in['theme_advanced_buttons1'] = str_replace(",wpsg", "", $in['theme_advanced_buttons1']);
-									
-									return $in;
-									
-								}
-								
-								// Damit die qTranslate Interne Editor Ãbersetzung nicht aufgerufen wird
-								remove_filter('the_editor', 'qtrans_modifyRichEditor');
-								
-								add_filter('tiny_mce_before_init', 'wpsg_formatTinyMCE');
-								add_filter('admin_head','wpsg_ShowTinyMCE');
-								wp_editor(@$this->view['data']['beschreibung'], 'beschreibung');
-								
-								?>
-											
-							</div>
-						</div>
+							  
 				
 						<?php $this->callMods('produkt_edit_content', array(&$this->view['data'])); ?>
 					
 					</div>
-							
-					<?php if ($_REQUEST['edit_id'] > 0) { ?>
-					<input type="hidden" name="edit_id" value="<?php echo $_REQUEST['edit_id']; ?>" />
-					<?php } ?>
-					
-					<?php if (isset($_REQUEST['wpsg_lang'])) { ?>
-					<input type="hidden" name="wpsg_lang" value="<?php echo $_REQUEST['wpsg_lang']; ?>" />
-					<?php } ?>
-				
-					<p class="submit">
-						<input type="submit" value="<?php echo __('Produkt speichern', 'wpsg'); ?>" class="button-primary" id="submit" name="submit" />
-						<input type="submit" value="<?php echo __('Produkt speichern und zur Ãbersicht', 'wpsg'); ?>" class="button-primary" id="submit_index" name="submit_index" />
-					</p>
-					
+							  
 				</div>
 		
Index: /views/produkt/addedit.phtml
===================================================================
--- /views/produkt/addedit.phtml	(revision 5449)
+++ /views/produkt/addedit.phtml	(revision 5450)
@@ -33,20 +33,19 @@
 				<?php $i = 0; foreach ($this->view['arSubAction'] as $k => $v) { $i ++; ?>		 
 				<a class="list-group-item <?php echo ((wpsg_getStr($_COOKIE['wpsg_product_addedit_tab'], 'general') === $k)?'active':''); ?>" wpsg-data-target="<?php echo $k; ?>" href="#"><?php echo $v['title']; ?></a>		
-				<?php } ?>
+				<?php } ?>								
+			</div>
+			
+			<br />
 				
-				<br />
-				
-				<?php if ($_REQUEST['edit_id'] > 0) { ?>
-				<input type="hidden" name="edit_id" value="<?php echo $_REQUEST['edit_id']; ?>" />
-				<?php } ?>
-				
-				<?php if (isset($_REQUEST['wpsg_lang'])) { ?>
-				<input type="hidden" name="wpsg_lang" value="<?php echo $_REQUEST['wpsg_lang']; ?>" />
-				<?php } ?>
-				
-				<input type="submit" value="<?php echo __('Speichern', 'wpsg'); ?>" class="button-primary" id="submit" name="submit" />
-				<input type="submit" value="<?php echo __('Speichern / zur Ãbersicht', 'wpsg'); ?>" class="button-primary" id="submit_index" name="submit_index" />
-				
-			</div>
+			<?php if ($_REQUEST['edit_id'] > 0) { ?>
+			<input type="hidden" name="edit_id" value="<?php echo $_REQUEST['edit_id']; ?>" />
+			<?php } ?>
+			
+			<?php if (isset($_REQUEST['wpsg_lang'])) { ?>
+			<input type="hidden" name="wpsg_lang" value="<?php echo $_REQUEST['wpsg_lang']; ?>" />
+			<?php } ?>
+			
+			<input type="submit" value="<?php echo __('Speichern', 'wpsg'); ?>" class="button-primary" id="submit" name="submit" />
+			<input type="submit" value="<?php echo __('Speichern / zur Ãbersicht', 'wpsg'); ?>" class="button-primary" id="submit_index" name="submit_index" />
 				
 		</div>
Index: /views/produkt/addedit_general.phtml
===================================================================
--- /views/produkt/addedit_general.phtml	(revision 5449)
+++ /views/produkt/addedit_general.phtml	(revision 5450)
@@ -6,15 +6,58 @@
 
 ?>
+ 
+<?php echo wpsg_drawForm_AdminboxStart(); ?>
+	<?php echo wpsg_drawForm_Input('name', __('Produktname', 'wpsg'), $this->view['data']['name'], array('placeholder' => __('Bitte hier den Produktnamen eingeben', 'wpsg'))); ?>	
+	<?php if ($this->isMultiLingual()) { ?>
+	<?php echo wpsg_drawForm_TextStart(); ?>
+		<?php foreach ($this->getStoreLanguages() as $a) { ?>
+			<?php if ((isset($_REQUEST['wpsg_lang']) && $_REQUEST['wpsg_lang'] != $a['locale']) || (!isset($_REQUEST['wpsg_lang']) && $a['lang'] != $GLOBALS['q_config']['default_language'])) { ?>
+			<?php if (isset($_REQUEST['wpsg_lang']) && $a['lang'] == $GLOBALS['q_config']['default_language']) { ?>
+			<a href="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Produkt&action=edit&edit_id=<?php echo $_REQUEST['edit_id']; ?>" title="<?php echo wpsg_translate(__('Zu Sprache #1# wechseln.', 'wpsg'), $a['name']); ?>">
+			<?php } else { ?>
+			<a href="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Produkt&action=edit&edit_id=<?php echo $_REQUEST['edit_id']; ?>&wpsg_lang=<?php echo $a['locale']; ?>" title="<?php echo wpsg_translate(__('Zu Sprache #1# wechseln.', 'wpsg'), $a['name']); ?>">
+			<?php } ?>
+				<img src="<?php echo $this->getFlagURL().$a['flag']; ?>" alt="<?php echo wpsg_translate(__('Zu Sprache #1# wechseln.', 'wpsg'), $a['name']); ?>" />
+			</a>
+			<?php } ?>
+		<?php } ?>
+	<?php echo wpsg_drawForm_TextEnd(__('Ãbersetzungen', 'wpsg')); ?>			
+	<?php } ?>
+	<?php echo wpsg_drawForm_Input('detailname', __('Produktname (Detail)', 'wpsg'), wpsg_getStr($this->view['data']['detailname'])); ?>
+	<?php if (wpsg_isSizedInt($this->view['data']['id']) && !isset($_REQUEST['wpsg_lang'])) { ?>
+		<?php echo wpsg_drawForm_Input(false, __('Produkt ID', 'wpsg'), wpsg_getStr($this->view['data']['id']), array('readonly' => true)); ?>
+	<?php } ?>							
+	<?php if (!isset($_REQUEST['wpsg_lang'])) { ?>
+		<?php echo wpsg_drawForm_Input('anr', __('Artikelnummer', 'wpsg'), wpsg_getStr($this->view['data']['anr'])); ?>
+		<?php if (!is_array($this->view['templates']) || sizeof($this->view['templates']) <= 0) { ?>
+			<?php echo wpsg_drawForm_Text(__('Produkttemplate', 'wpsg'), __('Keine Templatesdateien gefunden!', 'wpsg'), array('class_content_wrap' => 'wpsg_error')); ?>
+		<?php } else { ?>
+			<?php echo wpsg_drawForm_Select('ptemplate_file', __('Produkttemplate', 'wpsg'), $this->view['templates'], wpsg_getStr($this->view['data']['ptemplate_file']), array('noKeys' => true)); ?>
+		<?php } ?>				
+	<?php } ?>
+	<?php if (!$this->hasMod('wpsg_mod_produktartikel') && !isset($_REQUEST['wpsg_lang'])) { ?>
+	<?php echo wpsg_drawForm_Select('partikel', __('Zugeordneter Wordpress Artikel', 'wpsg'), $this->view['partikel_select'], wpsg_getStr($this->view['data']['partikel']), array('optgroup' => true)); ?>
+	<?php } ?>	 
+	<?php if (!isset($_REQUEST['wpsg_lang'])) { ?>
+	<?php echo wpsg_drawForm_Select('basket_multiple', __('Verhalten im Warenkorb', 'wpsg'), array(
+		'0' => __('Nur einmal mit beliebiger Menge (Standard)', 'wpsg'),
+		'4' => __('Nur einmal mit Menge 1', 'wpsg'),
+		'1' => __('Mehrfach mit beliebiger Menge', 'wpsg'),
+		'2' => __('Mehrfach mit Menge 1', 'wpsg')
+	), wpsg_getStr($this->view['data']['basket_multiple']), array('help' => 'basket_multiple')); ?>		
+	<?php } ?>
+	<?php if (wpsg_isSizedInt($this->view['data']['id'])) { ?>
+		<?php echo wpsg_drawForm_TextStart(); $url = $this->getProduktLink(array('id' => ((wpsg_isSizedInt($this->view['data']['lang_parent']))?$this->view['data']['lang_parent']:$this->view['data']['id']))); ?>
+			<a href="<?php echo $url; ?>"><?php echo wpsg_hspc($url); ?></a>
+		<?php echo wpsg_drawForm_TextEnd(__('URL', 'wpsg')); ?>		
+	<?php } ?>
+	<?php $this->callMods('produkt_edit_allgemein', array(&$this->view['data'])); ?>	
+<?php echo wpsg_drawForm_AdminboxEnd(__('Allgemein', 'wpsg')); ?>
 
 <?php if (!isset($_REQUEST['wpsg_lang'])) { ?>
-	
-	<?php echo wpsg_drawForm_AdminboxStart(); ?>
-		<?php echo wpsg_drawForm_Select('mwst_key', __('Steuergruppe', 'wpsg'), wpsg_tax_groups(true), @$this->view['data']['mwst_key']); ?>								
-		<?php echo wpsg_drawForm_Input('preis', wpsg_translate(__('Preis (#1#)', 'wpsg'), (($this->getBackendTaxview() === WPSG_NETTO)?'NETTO':'BRUTTO')), wpsg_ff($this->view['data']['preis'])); ?>
-		<?php echo wpsg_drawForm_Input('oldprice', wpsg_translate(__('Alter Preis (#1#)', 'wpsg'), (($this->getBackendTaxview() === WPSG_NETTO)?'NETTO':'BRUTTO')), wpsg_ff($this->view['data']['oldprice'])); ?>
-		<?php echo wpsg_drawForm_Input('', __('Steueranteil', 'wpsg'), wpsg_ff(@$this->view['data']['tax_sum_value'], $this->get_option('wpsg_currency')).' / '.$this->getDefaultCountry()->kuerzel, array('text' => true)); ?>
-		<?php echo wpsg_drawForm_Checkbox('euleistungsortregel', __('Produkt unterliegt den EU-Leistungsortregeln', 'wpsg'), @$this->view['data']['euleistungsortregel'], array('fullrow' => true, 'help' => 'EU-Leistungsortregel')); ?>
-		<a href="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Admin&subaction=laender"><span class="glyphicon glyphicon-globe wpsg-glyphicon"></span><?php echo __('LÃ€nderverwaltung', 'wpsg'); ?></a>
-	<?php echo wpsg_drawForm_AdminboxEnd(__('Preis / Steuer', 'wpsg')); ?>
-	 
+<?php echo wpsg_drawForm_AdminboxStart(); ?>
+	<?php echo wpsg_drawForm_Input('posturl', __('URL', 'wpsg'), wpsg_getStr($this->view['data']['posturl']), array('help' => 'URLBenachrichtigung')); ?>
+	<?php echo wpsg_drawForm_Checkbox('posturl_verkauf', __('Beim Verkauf', 'wpsg'), wpsg_getStr($this->view['data']['posturl_verkauf'])); ?>
+	<?php echo wpsg_drawForm_Checkbox('posturl_bezahlung', __('Bei Bezahlung', 'wpsg'), wpsg_getStr($this->view['data']['posturl_bezahlung'])); ?>
+<?php echo wpsg_drawForm_AdminboxEnd(__('URL Benachrichtigung', 'wpsg')); ?>
 <?php } ?>
Index: /views/produkt/addedit_payship.phtml
===================================================================
--- /views/produkt/addedit_payship.phtml	(revision 5450)
+++ /views/produkt/addedit_payship.phtml	(revision 5450)
@@ -0,0 +1,56 @@
+<?php
+
+	/**
+	 * Template fÃŒr den Reiter "Versand-/ Zahlungsarten"
+	 */
+	
+?>
+<?php echo wpsg_drawForm_AdminboxStart(); ?>
+	<?php echo wpsg_drawForm_Select('wpsg_paymentmethods_select', '', array('0' => __('Alle', 'wpsg'), '1' => __('Auswahl', 'wpsg')), ((wpsg_isSizedArray($this->view['allowedPayment']))?'1':'0')); ?>		
+	<div class="wpsg_paymentmethods_select">
+		<?php foreach ($this->arPayment as $p) { if (!isset($p['deleted']) || $p['deleted'] != '1') { ?>
+			<?php echo wpsg_drawForm_Checkbox('wpsg_paymentmethods[]', $p['name'], in_array($p['id'], (array)$this->view['allowedPayment']), array('id' => 'wpsg_paymentmethods_'.$p['id'], 'value' => $p['id'])); ?>
+		<?php } } ?>
+	</div>
+	
+	<?php if ($this->hasMod('wpsg_mod_userpayment')) { ?>
+	<br />
+	<a href="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Admin&action=module&modul=wpsg_mod_userpayment"><span class="wpsg-glyphicon glyphicon glyphicon-wrench"></span><?php echo __('Weitere Zahlvarianten definieren', 'wpsg'); ?></a>
+	<?php } ?>
+	
+	<script type="text/javascript">/* <![CDATA[ */
+
+		jQuery('#wpsg_paymentmethods_select').bind('change', function() {
+
+			if (jQuery(this).val() == '1') jQuery('.wpsg_paymentmethods_select').show();
+			else jQuery('.wpsg_paymentmethods_select').hide();
+			
+		} ).change();
+	
+	/* ]]> */</script>
+<?php echo wpsg_drawForm_AdminboxEnd(__('Erlaubte Zahlungsarten', 'wpsg')); ?>
+
+<?php echo wpsg_drawForm_AdminboxStart(); ?>
+	<?php echo wpsg_drawForm_Select('wpsg_shippingmethods_select', '', array('0' => __('Alle', 'wpsg'), '1' => __('Auswahl', 'wpsg')), ((wpsg_isSizedArray($this->view['allowedShipping']))?'1':'0')); ?>
+	<div class="wpsg_shippingmethods_select">
+		<?php foreach ($this->arShipping as $s) { if (!isset($s['deleted']) || $s['deleted'] != '1') { ?> 
+			<?php echo wpsg_drawForm_Checkbox('wpsg_shippingmethods[]', $s['name'], in_array($s['id'], (array)$this->view['allowedShipping']), array('id' => 'wpsg_paymentmethods_'.$s['id'], 'value' => $s['id'])); ?>
+		<?php } } ?>
+	</div>
+	
+	<?php if ($this->hasMod('wpsg_mod_versandarten')) { ?>
+	<br />
+	<a href="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Admin&action=module&modul=wpsg_mod_versandarten"><span class="wpsg-glyphicon glyphicon glyphicon-wrench"></span><?php echo __('Weitere Versandarten definieren', 'wpsg'); ?></a>
+	<?php } ?>
+							
+	<script type="text/javascript">/* <![CDATA[ */
+	
+		jQuery('#wpsg_shippingmethods_select').bind('change', function() {
+	
+			if (jQuery(this).val() == '1') jQuery('.wpsg_shippingmethods_select').show();
+			else jQuery('.wpsg_shippingmethods_select').hide();
+									
+		} ).change();
+							
+	/* ]]> */</script>
+<?php echo wpsg_drawForm_AdminboxEnd(__('Erlaubte Versandarten', 'wpsg')); ?>
Index: /views/produkt/addedit_price.phtml
===================================================================
--- /views/produkt/addedit_price.phtml	(revision 5450)
+++ /views/produkt/addedit_price.phtml	(revision 5450)
@@ -0,0 +1,9 @@
+<?php echo wpsg_drawForm_AdminboxStart(); ?>
+	<?php echo wpsg_drawForm_Select('mwst_key', __('Steuergruppe', 'wpsg'), wpsg_tax_groups(true), @$this->view['data']['mwst_key']); ?>								
+	<?php echo wpsg_drawForm_Input('preis', wpsg_translate(__('Preis (#1#)', 'wpsg'), (($this->getBackendTaxview() === WPSG_NETTO)?'NETTO':'BRUTTO')), wpsg_ff($this->view['data']['preis'])); ?>
+	<?php echo wpsg_drawForm_Input('oldprice', wpsg_translate(__('Alter Preis (#1#)', 'wpsg'), (($this->getBackendTaxview() === WPSG_NETTO)?'NETTO':'BRUTTO')), wpsg_ff($this->view['data']['oldprice'])); ?>
+	<?php echo wpsg_drawForm_Input('', __('Steueranteil', 'wpsg'), wpsg_ff(@$this->view['data']['tax_sum_value'], $this->get_option('wpsg_currency')).' / '.$this->getDefaultCountry()->kuerzel, array('text' => true)); ?>
+	<?php echo wpsg_drawForm_Checkbox('euleistungsortregel', __('Produkt unterliegt den EU-Leistungsortregeln', 'wpsg'), @$this->view['data']['euleistungsortregel'], array('fullrow' => true, 'help' => 'EU-Leistungsortregel')); ?>
+	<a href="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Admin&subaction=laender"><span class="glyphicon glyphicon-globe wpsg-glyphicon"></span><?php echo __('LÃ€nderverwaltung', 'wpsg'); ?></a>
+<?php echo wpsg_drawForm_AdminboxEnd(__('Preis / Steuer', 'wpsg')); ?>
+				
Index: /views/produkt/addedit_texte.phtml
===================================================================
--- /views/produkt/addedit_texte.phtml	(revision 5450)
+++ /views/produkt/addedit_texte.phtml	(revision 5450)
@@ -0,0 +1,43 @@
+<?php
+
+	/**
+	 * Template fÃŒr die Texte innerhalb der Produktverwaltung
+	 */
+
+?>
+
+<?php echo wpsg_drawForm_AdminboxStart(); ?>
+<?php 
+								
+	function wpsg_ShowTinyMCE() 
+	{ 
+		  
+		wp_print_scripts('editor');
+		if (function_exists('add_thickbox')) add_thickbox();
+		wp_print_scripts('media-upload');
+		if (function_exists('wp_tiny_mce')) wp_tiny_mce();
+		wp_admin_css();
+		
+		do_action("admin_print_styles-post-php");
+		do_action('admin_print_styles');
+		
+	}
+	
+	function wpsg_formatTinyMCE($in)
+	{
+		
+		if (isset($in['theme_advanced_buttons1'])) $in['theme_advanced_buttons1'] = str_replace(",wpsg", "", $in['theme_advanced_buttons1']);
+		
+		return $in;
+		
+	}
+	
+	// Damit die qTranslate Interne Editor Ãbersetzung nicht aufgerufen wird
+	remove_filter('the_editor', 'qtrans_modifyRichEditor');
+	
+	add_filter('tiny_mce_before_init', 'wpsg_formatTinyMCE');
+	add_filter('admin_head','wpsg_ShowTinyMCE');
+	wp_editor(@$this->view['data']['beschreibung'], 'beschreibung');
+	
+?>
+<?php echo wpsg_drawForm_AdminboxEnd(__('Beschreibung', 'wpsg')); ?>
