Index: /controller/wpsg_AdminController.class.php
===================================================================
--- /controller/wpsg_AdminController.class.php	(revision 6486)
+++ /controller/wpsg_AdminController.class.php	(revision 6488)
@@ -547,6 +547,4 @@
 			$this->render(WPSG_PATH_VIEW.'/admin/licence.phtml'); 	
 			
-			//return $this->shop->callMod('wpsg_mod_core', 'admin_registrierung');
-
 		} // public function registrierungAction()
 
@@ -2001,6 +1999,4 @@
 			{
 
-				if ($mod_key == 'wpsg_mod_core') continue;
-
 				$group = $m->group;
 
@@ -2279,6 +2275,4 @@
                 $this->update_option('wpsg_displayTemplates', $_REQUEST['wpsg_displayTemplates']);
                 $this->update_option('wpsg_displayTemplatesLog', $_REQUEST['wpsg_displayTemplatesLog']);
-
-				if ($this->shop->hasMod('wpsg_mod_core')) $this->update_option('wpsg_debugURL', $_REQUEST['wpsg_debugURL']);
 
 				$this->update_option('wpsg_referer_requesturi', $_REQUEST['wpsg_referer_requesturi']);
@@ -2745,5 +2739,149 @@
 		{
 
-			$this->shop->callMod('wpsg_mod_core', 'installModul', array($modul_key));
+			global $wp_filesystem;
+			
+			ob_start();
+			$request_creds = request_filesystem_credentials(
+				WPSG_URL_WP.'wp-admin/admin.php?page=wpsg-Admin&action=registrierung&noheader=1&do=installModul&modul='.$modul_key,
+				'',
+				false,
+				false,
+				null
+			);
+			ob_end_clean();
+				
+			// 1 gibt es bei Windows Rechnern zurÃŒck, da es hier egal ist
+			// Ein Array ist es wenn das Formular bereits abgeschickt wurde und die Anfrage vom Formular kommt
+			// false ist es wenn kein Zugriff ist dann muss das Formular angezeigt werden
+				
+			if (false === $request_creds)
+			{
+			
+				// Berechtigungen anfragen
+				$this->shop->redirect(WPSG_URL_WP.'wp-admin/admin.php?page=wpsg-Admin&action=registrierung&do=getCredentials&modul='.$_REQUEST['modul']);
+			
+			}
+			else if (is_array($request_creds))
+			{
+			
+				if (!WP_Filesystem($request_creds))
+				{
+			
+					// Eingegebene Daten waren falsch
+					$this->shop->redirect(WPSG_URL_WP.'wp-admin/admin.php?page=wpsg-Admin&action=registrierung&do=getCredentials&modul='.$_REQUEST['modul']);
+			
+				}
+			
+			}
+			
+			$temp_name = $this->shop->getTempName($modul_key.'.zip');
+			@unlink($temp_name);
+				
+			$wpsg_update_data = wpsg_get_update_data();
+			$url = $wpsg_update_data['modulinfo'][$modul_key]['download_url'];
+			
+			if (!wpsg_isSizedString($url)) throw new \Exception("UngÃŒltige Download URL.");
+						
+			$bOK = @copy($url, $temp_name);
+			
+			if (!$bOK)
+			{
+			
+				$bOK = @file_put_contents($temp_name, $this->shop->get_url_content($url));
+			
+				if (!$bOK)
+				{
+						
+					// Pfad finden fÃŒr das Wordpress Filesystem
+					if ($GLOBALS['wpsg_sc']->isMultiBlog())
+						$ftp_path = WP_CONTENT_DIR.'/'.WPSG_MB_UPLOADS.'/wpsg/wpsg_temp/';
+						else
+							$ftp_path = WP_CONTENT_DIR.'/uploads/wpsg_temp/';
+								
+							$ftp_path = trailingslashit($wp_filesystem->find_folder($ftp_path)).preg_replace('/(.*)\/wpsg_temp\//', '', $temp_name);
+								
+							$bOK = $wp_filesystem->put_contents($ftp_path, $this->shop->get_url_content($url), FS_CHMOD_FILE);
+								
+							if (!$bOK)
+							{
+									
+								$this->shop->addBackendError(wpsg_translate(__('Modul (#1#) konnte nicht kopiert werden!', 'wpsg'), $modul_key));
+								return false;
+			
+							}
+								
+				}
+			
+			}
+				
+			$zip = new ZipArchive();
+			
+			if ($zip->open($temp_name) === true)
+			{
+			
+				try
+				{
+						
+					$bOK = @$zip->extractTo(WPSG_PATH.'/../');
+					$zip->close();
+			
+					if ($bOK === false)
+					{
+			
+						throw new Exception();
+							
+					}
+					else
+					{
+			
+						return true;
+							
+					}
+			
+				}
+				catch (Exception $e)
+				{
+						
+					// Es ist ein Fehler aufgetreten, jetzt versuche ich die Datei mit dem Wordpress Filesystem zu entpacken
+						
+					// Pfad finden fÃŒr das Wordpress Filesystem
+					$ftp_path = trailingslashit($wp_filesystem->find_folder(realpath(WPSG_PATH.'/../')));
+						
+					$bOK = unzip_file($temp_name, $ftp_path);
+						
+					if ($bOK !== true)
+					{
+			
+						$strError = '';
+			
+						// Hier ist immer noch ein Fehler aufgetreten
+						foreach ((array)$bOK->errors as $e)
+						{
+								
+							$strError .= $e[0].' ';
+			
+						}
+						 
+						$this->shop->addBackendError(wpsg_translate(__('Fehler beim Entpacken: #1#', 'wpsg'), $strError)); return false;
+			
+					}
+					else
+					{
+			
+						return true;
+			
+					}
+						
+				}
+			
+			}
+			else
+			{
+			
+				$this->shop->addBackendError(__('Datei konnte nicht ÃŒbertragen werden.', 'wpsg')); return false;
+			
+			}
+			
+			$this->shop->addBackendError(__('Datei konnte nicht entpackt werden.', 'wpsg')); return false;
 
 		} // private function installModul($modul_key)
Index: /controller/wpsg_ShopController.class.php
===================================================================
--- /controller/wpsg_ShopController.class.php	(revision 6486)
+++ /controller/wpsg_ShopController.class.php	(revision 6488)
@@ -619,5 +619,5 @@
 		public function initShop($prefix)
 		{
-
+			
 			wpsg_debug_console($this->get_option('wp_installed'));
 			
@@ -1116,12 +1116,4 @@
 			global $locale, $l10n;
 
-			if (!$this->hasActiveLicence() && $this->getDemoDays() <= 0)
-			{
-
-				// Ihre <a title="Informationen ÃŒber das wpShopGermandy Wordpress Shop Plugin System" href="http://wpshopgermany.de">wpShopGermany</a> <a href="http://shop.maennchen1.de/produkte/wpshopgermany-lizenzkey/" title="wpShopGermany Wordpress Shop Plugin System Lizenz erwerben">Lizenz</a> ist abgelaufen.<br />
-				return base64_decode('SWhyZSA8YSB0aXRsZT0iSW5mb3JtYXRpb25lbiDDvGJlciBkYXMgd3BTaG9wR2VybWFuZHkgV29yZHByZXNzIFNob3AgUGx1Z2luIFN5c3RlbSIgaHJlZj0iaHR0cDovL3dwc2hvcGdlcm1hbnkuZGUiPndwU2hvcEdlcm1hbnk8L2E+IDxhIGhyZWY9Imh0dHA6Ly9zaG9wLm1hZW5uY2hlbjEuZGUvcHJvZHVrdGUvd3BzaG9wZ2VybWFueS1saXplbnprZXkvIiB0aXRsZT0id3BTaG9wR2VybWFueSBXb3JkcHJlc3MgU2hvcCBQbHVnaW4gU3lzdGVtIExpemVueiBlcndlcmJlbiI+TGl6ZW56PC9hPiBpc3QgYWJnZWxhdWZlbi48YnIgLz4=');
-
-			}
-
 			if ($force_locale !== false && file_exists(dirname(__FILE__).'/../lang/wpsg-'.$force_locale.'.mo'))
 			{
@@ -1278,12 +1270,4 @@
 
 				$this->bShortcode = true;
-
-				if (!$this->hasActiveLicence() && $this->getDemoDays() <= 0)
-				{
-
-					// Ihre <a title="Informationen ÃŒber das wpShopGermandy Wordpress Shop Plugin System" href="http://wpshopgermany.de">wpShopGermany</a> <a href="http://shop.maennchen1.de/produkte/wpshopgermany-lizenzkey/" title="wpShopGermany Wordpress Shop Plugin System Lizenz erwerben">Lizenz</a> ist abgelaufen.<br />
-					return base64_decode('SWhyZSA8YSB0aXRsZT0iSW5mb3JtYXRpb25lbiDDvGJlciBkYXMgd3BTaG9wR2VybWFuZHkgV29yZHByZXNzIFNob3AgUGx1Z2luIFN5c3RlbSIgaHJlZj0iaHR0cDovL3dwc2hvcGdlcm1hbnkuZGUiPndwU2hvcEdlcm1hbnk8L2E+IDxhIGhyZWY9Imh0dHA6Ly9zaG9wLm1hZW5uY2hlbjEuZGUvcHJvZHVrdGUvd3BzaG9wZ2VybWFueS1saXplbnprZXkvIiB0aXRsZT0id3BTaG9wR2VybWFueSBXb3JkcHJlc3MgU2hvcCBQbHVnaW4gU3lzdGVtIExpemVueiBlcndlcmJlbiI+TGl6ZW56PC9hPiBpc3QgYWJnZWxhdWZlbi48YnIgLz4=');
-
-				}
 
 				if (isset($atts['template']))
@@ -2197,36 +2181,4 @@
 
 		/**
-		 * Gibt die Tage der DemoVersion zurÃŒck
-		 */
-		public function getDemoDays()
-		{
-
-			if ($this->hasMod('wpsg_mod_core')) return $this->callMod('wpsg_mod_core', 'getDemoDays');
-			else return 0; /* Free Version benÃ¶tigt keine Demoversion */
-
-		} // public function getDemoDays()
-
-		/**
-		 * Gibt true zurÃŒck wenn eine aktive Lizenz eingebunden ist
-		 */
-		public function hasActiveLicence()
-		{
-
-			if ($this->hasMod('wpsg_mod_core'))
-			{
-
-				return $this->callMod('wpsg_mod_core', 'hasActiveLicence');
-
-			}
-			else
-			{
-
-				return true;
-
-			}
-
-		} // public function hasActiveLicence()
-
-		/**
 		 * Gibt die ID einer Seite aus den Einstellungen zurÃŒck,
 		 * beachtet dabei die aktuelle Sprache
@@ -2688,6 +2640,5 @@
 			}
 
-			// Branding
-			if (!$this->hasMod('wpsg_mod_core') || @$this->arLizenz['l'] < 3)
+			if (!wpsg_isSizedInt($this->get_option('wp_installed')))
 			{
 
Index: /controller/wpsg_SystemController.class.php
===================================================================
--- /controller/wpsg_SystemController.class.php	(revision 6486)
+++ /controller/wpsg_SystemController.class.php	(revision 6488)
@@ -516,5 +516,28 @@
 				
 			}
-			 
+
+			$wpsg_update_data = wpsg_get_update_data();
+
+			if (is_object($wpsg_update_data['updateData']))
+			{
+
+				$arBanner = $wpsg_update_data['updateData']->banner;
+	
+				if (wpsg_isSizedArray($arBanner))
+				{
+	
+					foreach ($arBanner as $b)
+					{
+	
+						$strOut .= '<div class="wpsg_banner '.$b['class'].'">';
+						$strOut .= $b['content'];
+						$strOut .= '</div>';
+	
+					}
+	
+				}
+	
+			}
+			
 			if (wpsg_isSizedString($strOut)) $strOut = '<div class="wrap">'.$strOut.'</div>';
  
Index: /lib/filter_functions.inc.php
===================================================================
--- /lib/filter_functions.inc.php	(revision 6486)
+++ /lib/filter_functions.inc.php	(revision 6488)
@@ -39,5 +39,5 @@
         $wpsg_update_data = wpsg_get_update_data();
 
-        if (is_object($wpsg_update_data['updateData']))
+        if (is_object($wpsg_update_data['updateData']) && !preg_match('/wpsg/', $_REQUEST['page']))
         {
 
@@ -58,7 +58,5 @@
             }
 
-        }
-		
-		echo $GLOBALS['wpsg_sc']->writeBackendMessage();
+        } 
 
     }
@@ -165,14 +163,9 @@
 		add_menu_page('wpShopGermany', 'wpShopGermany', 'wpsg_menu', 'wpsg-Admin', 'wpsg_dispatch', "dashicons-cart", 9);
 		
-		if ($GLOBALS['wpsg_sc']->hasActiveLicence() || $GLOBALS['wpsg_sc']->getDemoDays() > 0)
-		{
-		
-			add_submenu_page('wpsg-Admin', __("Konfiguration", "wpsg"), __("Konfiguration", "wpsg"), 'wpsg_conf', 'wpsg-Admin', 'wpsg_dispatch');
-			add_submenu_page('wpsg-Admin', __("Produktverwaltung", "wpsg"), __("Produktverwaltung", "wpsg"), 'wpsg_produkt', 'wpsg-Produkt', 'wpsg_dispatch');
-			add_submenu_page('wpsg-Admin', __("Bestellverwaltung", "wpsg"), __("Bestellverwaltung", "wpsg"), 'wpsg_order', 'wpsg-Order', 'wpsg_dispatch');
-		
-			$GLOBALS['wpsg_sc']->callMods('wpsg_add_pages');
-			
-		}
+		add_submenu_page('wpsg-Admin', __("Konfiguration", "wpsg"), __("Konfiguration", "wpsg"), 'wpsg_conf', 'wpsg-Admin', 'wpsg_dispatch');
+		add_submenu_page('wpsg-Admin', __("Produktverwaltung", "wpsg"), __("Produktverwaltung", "wpsg"), 'wpsg_produkt', 'wpsg-Produkt', 'wpsg_dispatch');
+		add_submenu_page('wpsg-Admin', __("Bestellverwaltung", "wpsg"), __("Bestellverwaltung", "wpsg"), 'wpsg_order', 'wpsg-Order', 'wpsg_dispatch');
+		
+		$GLOBALS['wpsg_sc']->callMods('wpsg_add_pages');
 		
 	} // function wpsg_add_pages()
@@ -663,8 +656,11 @@
 		if ($_REQUEST['plugin'] != WPSG_FOLDERNAME.'/wpshopgermany.php') return;
 		
+		die("TODO");
+		/*
 		if ($GLOBALS['wpsg_sc']->get_option('wpsg_debugURL') === '1' && $GLOBALS['wpsg_sc']->hasMod('wpsg_mod_core'))
 			$remote_version = $GLOBALS['wpsg_sc']->get_url_content(base64_decode('aHR0cDovL2RsLm1hZW5uY2hlbjEuZGUvd3BzZy92ZXJzaW9uX2Rldg==')); // http://dl.maennchen1.de/wpsg/version_dev
 		else
 			$remote_version = $GLOBALS['wpsg_sc']->get_url_content(base64_decode('aHR0cDovL2RsLm1hZW5uY2hlbjEuZGUvd3BzZy92ZXJzaW9u')); // http://dl.maennchen1.de/wpsg/version
+		*/
 		
 		if (!isset($_REQUEST['_ajax_nonce'])) echo __('Kopiere Shop zurÃŒck ...', 'wpsg').'<br />';
Index: /mods/wpsg_mod_basic.class.php
===================================================================
--- /mods/wpsg_mod_basic.class.php	(revision 6486)
+++ /mods/wpsg_mod_basic.class.php	(revision 6488)
@@ -14,6 +14,5 @@
 		
 		/** Array in dem die Reihenfolge der Module bestimmt wird */
-		var $arIDs = array(
-			0 		=> 'wpsg_mod_core',
+		var $arIDs = array( 
 			1 		=> 'wpsg_mod_prepayment',
 			2 		=> 'wpsg_mod_paypal',	
Index: /views/admin/access.phtml
===================================================================
--- /views/admin/access.phtml	(revision 6486)
+++ /views/admin/access.phtml	(revision 6488)
@@ -59,5 +59,5 @@
 							<td></td>
 						</tr>
-						<?php if ($this->hasMod('wpsg_mod_core')) { ?>
+						<?php $wpsg_update_data = wpsg_get_update_data(); if (wpsg_isSizedInt($wpsg_update_data['returnCode'])) { ?>
 						<tr>
 							<td class="wpsg_col_capname"><?php echo __('Lizenzverwaltung', 'wpsg'); ?></td>
Index: /views/admin/extended.phtml
===================================================================
--- /views/admin/extended.phtml	(revision 6486)
+++ /views/admin/extended.phtml	(revision 6488)
@@ -33,8 +33,5 @@
 				<?php echo wpsg_drawForm_Checkbox('wpsg_displayTemplatesLog', __('Verwendete Templates in Entwicklerkonsole anzeigen', 'wpsg'), $this->get_option('wpsg_displayTemplatesLog'), array('help' => 'wpsg_displayTemplatesLog')); ?>
 				<br />
-				<?php if ($this->hasMod('wpsg_mod_core')) { ?>
-				<?php echo wpsg_drawForm_Checkbox('wpsg_debugURL', __('Beta Updates laden', 'wpsg'), $this->get_option('wpsg_debugURL'), array('help' => 'wpsg_debugURL')); ?>				
-				<?php } ?>
-				
+								
 				<?php echo wpsg_drawForm_Checkbox('wpsg_referer_requesturi', __('RequestURI als ProduktURL verwenden', 'wpsg'), $this->get_option('wpsg_referer_requesturi'), array('help' => 'wpsg_referer_requesturi')); ?>
 				<?php echo wpsg_drawForm_Checkbox('wpsg_ignoreuserview', __('User Views ignorieren', 'wpsg'), $this->get_option('wpsg_ignoreuserview'), array('help' => 'wpsg_ignoreuserview')); ?>		
Index: /views/admin/index.phtml
===================================================================
--- /views/admin/index.phtml	(revision 6486)
+++ /views/admin/index.phtml	(revision 6488)
@@ -5,4 +5,6 @@
 	 * Normalerweise sollte hier nichts angepasst werden
 	 */
+
+	$wpsg_update_data = wpsg_get_update_data();
  
 ?>
@@ -19,6 +21,6 @@
 			 		<li role="presentation" class="<?php echo (($this->view['actionName'] == "index")?'active':''); ?>"><a href="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Admin"><?php echo __("Einstellungen", "wpsg"); ?></a></li>
 					<li role="presentation" class="<?php echo (($this->view['actionName'] == "module")?'active':''); ?>"><a href="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Admin&amp;action=module"><?php echo __("Module", "wpsg"); ?></a></li>
-						
-					<?php if (current_user_can('wpsg_lizence') && is_array(wpsg_get_update_data())) { ?>			
+					
+					<?php if (current_user_can('wpsg_lizence') && wpsg_isSizedInt($wpsg_update_data['returnCode'])) { ?>			
 					<li role="presentation" class="<?php echo (($this->view['actionName'] == "registrierung")?'active':''); ?>"><a href="<?php echo WPSG_URL_WP; ?>wp-admin/admin.php?page=wpsg-Admin&amp;action=registrierung"><?php echo __("Lizenzverwaltung", "wpsg"); ?></a></li>
 					<?php } ?>
@@ -39,6 +41,6 @@
 	</nav>
 	
-	<hr class="wp-header-end" />
-				  	
+	<?php echo $this->writeBackendMessage(); ?>
+			  	
 	<div class="wpsg_admin_wrap">
 		<?php if (wpsg_isSizedString($this->view['subTemplate'])) { ?>
Index: /views/admin/licence.phtml
===================================================================
--- /views/admin/licence.phtml	(revision 6486)
+++ /views/admin/licence.phtml	(revision 6488)
@@ -7,5 +7,5 @@
     $wpsg_update_data = wpsg_get_update_data();
 
-    if (!is_array($wpsg_update_data) || !current_user_can('wpsg_lizence')) die();
+    if (!is_array($wpsg_update_data) || !current_user_can('wpsg_lizence') || !wpsg_isSizedInt($wpsg_update_data['returnCode'])) die();
 
 ?>
@@ -216,6 +216,6 @@
                                             <?php } else { ?>
                                                 
-                                                <?php if (wpsg_isSizedString($modul_info['url_shop'])) { ?>
-                                                <a href="<?php echo $modul_info['url_shop']; ?>" target="_blank"><?php echo __('Modulcode erwerben', 'wpsg'); ?></a>
+                                                <?php if (wpsg_isSizedString($modul_info['shop_url'])) { ?>
+                                                <a href="<?php echo $modul_info['shop_url']; ?>" target="_blank"><?php echo __('Modulcode erwerben', 'wpsg'); ?></a>
                                                 <?php } else { ?>
                                                 <a href="https://shop.maennchen1.de" target="_blank"><?php echo __('Modulcode erwerben', 'wpsg'); ?></a>
Index: /views/admin/module.phtml
===================================================================
--- /views/admin/module.phtml	(revision 6486)
+++ /views/admin/module.phtml	(revision 6488)
@@ -132,5 +132,5 @@
 		<?php } ?>
 		
-		<?php if (!isset($this->arAllModule[$_REQUEST['modul']]->version) || ((wpsg_isTrue($this->arAllModule[$_REQUEST['modul']]->free) || (is_array($this->arLizenz) && in_array($_REQUEST['modul'], (array)$this->arLizenz['mods'])) || $this->arAllModule[$_REQUEST['modul']]->getDemoDays() > 0))) { ?>
+		<?php if (!isset($this->arAllModule[$_REQUEST['modul']]->version) || ((wpsg_isTrue($this->arAllModule[$_REQUEST['modul']]->free) || (is_array($this->arLizenz) && in_array($_REQUEST['modul'], (array)$this->arLizenz['mods']))))) { ?>
 			<?php if ($this->arAllModule[$_REQUEST['modul']]->inline === true) { ?>
 			<p class="submit"><input type="submit" value="<?php echo __('Einstellungen speichern', 'wpsg'); ?>" class="button-primary" id="submit" name="submit"></p>
@@ -158,5 +158,5 @@
 	<?php } ?>
 	
-	<?php if (array_key_exists($_REQUEST['modul'], $this->arModule) && (!isset($this->arAllModule[$_REQUEST['modul']]->version) || (($this->arAllModule[$_REQUEST['modul']]->free === true || (is_array($this->arLizenz) && in_array($_REQUEST['modul'], (array)$this->arLizenz['mods'])) || $this->arAllModule[$_REQUEST['modul']]->getDemoDays() > 0)))) { ?>
+	<?php if (array_key_exists($_REQUEST['modul'], $this->arModule) && (!isset($this->arAllModule[$_REQUEST['modul']]->version) || (($this->arAllModule[$_REQUEST['modul']]->free === true || (is_array($this->arLizenz) && in_array($_REQUEST['modul'], (array)$this->arLizenz['mods'])))))) { ?>
 	<?php echo $this->arModule[$_REQUEST['modul']]->settings_edit_afterform(); ?>
 	<?php } ?>	
@@ -197,5 +197,5 @@
 				
 				<?php $wpsg_update_data = wpsg_get_update_data(); ?>
-				<?php if (wpsg_isSizedArray($wpsg_update_data)) { ?>
+				<?php if (wpsg_isSizedArray($wpsg_update_data['modulinfo'])) { ?>
 				
 					<table class="table modultable">
@@ -237,6 +237,6 @@
 									<?php } else { ?>
 										
-										<?php if (wpsg_isSizedString($modul_info['url_shop'])) { ?>
-										<a href="<?php echo $modul_info['url_shop']; ?>" target="_blank"><?php echo __('Modulcode erwerben', 'wpsg'); ?></a>
+										<?php if (wpsg_isSizedString($modul_info['shop_url'])) { ?>
+										<a href="<?php echo $modul_info['shop_url']; ?>" target="_blank"><?php echo __('Modulcode erwerben', 'wpsg'); ?></a>
 										<?php } else { ?>
 										<a href="https://shop.maennchen1.de" target="_blank"><?php echo __('Modulcode erwerben', 'wpsg'); ?></a>
