[GELÖST] BUG bei Shopware 5.2 und Nutzung CustomerGroup-Stores in Plugin-Config im Plugin Manager

Hallo liebe shopware - Gemeinde,

nach dem Update / Herstellen der Kompatibilität eines Plugins mit Shopware 5.2.0 kommt es beim Aufruf der Plugin Konfiguration des Plugins im Plugin Manager zu folgender Fehlermeldung:

Request:

GET http://xxx.de/backend/?f=base/CustomerGroup.js

Fehlermeldung:

Fatal error: Uncaught exception 'SmartyException' with message 'Unable to load template snippet
 'backend/index/base/customer_groupjs.js'' in /engine/Library
/Smarty/sysplugins/smarty_internal_templatebase.php:127
Stack trace:
#0 /engine/Library/Enlight/View/Default.php(274): Smarty_Internal_TemplateBase-
>fetch()
#1 /engine/Library/Enlight/Controller/Plugins/ViewRenderer
/Bootstrap.php(216): Enlight_View_Default->render(Object(Enlight_Template_Default))
#2 /engine/Library/Enlight/Controller/Plugins/ViewRenderer
/Bootstrap.php(242): Enlight_Controller_Plugins_ViewRenderer_Bootstrap->renderTemplate(Object(Enlight_Template_Default
))
#3 /engine/Library/Enlight/Controller/Plugins/ViewRenderer
/Bootstrap.php(136): Enlight_Controller_Plugins_ViewRenderer_Bootstrap->render()
#4 [internal function]: Enlight_Controller_Plugin in /engine
/Library/Smarty/sysplugins/smarty_internal_templatebase.php on line 127

und:

too much recursion
	
var Ext=Ext||{};Ext._startTime=new Date().getTime();(function(){var h=this,a=Obj...

In der Plugin-Konfiguration ist unter anderem eine Kundengruppenauswahl enthalten, die (scheinbar) auch die Fehlerursache ist (aber eben nur im Plugin Manager):

$form->setElement('combo', 'customer_groups', 
     array(
          'label' => 'Kundengruppen',
          'store' => 'base.CustomerGroup',
          'multiSelect' => true,
          'scope' => Shopware\Models\Config\Element::SCOPE_SHOP,
          'value' => '',
     )
);

Unterhalb von Shopware 5.2.0 hat alles problemlos funktioniert. Nun kann man über den Plugin Manager die Plugin-Konfiguration des Plugins nicht mehr aufrufen.

Ruft man die Plugin-Konfiguration in den Grundeinstellungen auf („Einstellungen“ -> „Grundeinstellungen“ -> „Weitere Einstellungen“ -> Plugin auswählen), klappt der Aufruf der Plugin-Konfiguration.

Ist der Bug eventuell schon bekannt und irgendwie behebbar?

Beste Grüße

Sebastian

Hallo,

das ganze kann man sich auch problemlos bei sich selbst nachstellen, folgendes Beispiel führt nur unter Shopware 5.2.0 (beispielsweise unter Shopware 5.1.6 funktioniert es problemlos) zu dem genannten Bug:

 true, 'update' => true, 'enable' => true);
		}
		
		public function getInfo(){
			return array(
				'version' => $this->getVersion(),
				'label' => $this->getLabel(),
				'link' => '',
				'supplier' => '',
				'author' => '',
				'description' => '',
				'support' => ''
			);
		}
		
		public function getLabel(){
			return 'Test';
		}
		
		public function getVersion(){
			return '1.0.0';
		}
				
		public function install(){
			$this->subscribeEvents();
			
			$this->createConfigForm();
				 
			return array('success' => true, 'invalidateCache' => array('frontend', 'backend', 'proxy'));
		}
		
		public function uninstall(){
			return array('success' => true, 'invalidateCache' => array('frontend', 'backend', 'proxy'));
		}
		
		public function update($version){
			$form = $this->Form();
			
			switch($version) {
				case '1.0.0':
					break;
				default:
					return false;
			}
			
			return true;
		}
	 
		private function subscribeEvents(){
			
		}
		
		protected function createConfigForm(){
			$form = $this->Form();
			
			$form->setElement('combo', 'customer_groups', 
				array(
					'label' => 'Kundengruppen',
					'store' => 'base.CustomerGroup',
					'multiSelect' => true,
					'scope' => Shopware\Models\Config\Element::SCOPE_SHOP,
					'value' => '',
				)
			);
		}	
	}

Ticket siehe hier: Shopware Issuetracker .

Bitte voten, der Bug betrifft ja jedes Shopware Plugin, dass ein Kundengruppen-Auswahl über den Store nutzt.

Bei einem Update könnte man die Einstellungen zwar bei den Grundeinstellungen ändern, jedoch bei einer Installation des Plugins hat man keinerlei Möglichkeit, das Plugin zu aktivieren, da in dem Fenster sofort ein Shopware Fehler Reporter - Popup kommt.

Der oben genannte Code funktioniert auch bei einem komplett leeren Shopware-Shop Version 5.2.0 RC1 nicht - ist also definitiv ein Bug in genannter Version.

Beste Grüße

Sebastian

Hallo Sebastian,

im RC1 ist das ein Fehler der bereits behoben sein sollte. Hier dazu der Commit: SW-15347 - Fix stores for plugin config fields for previous shopware … · shopware/shopware@22f5cac · GitHub

In den nächsten Tagen wird es einen weiteren RC geben, der u.a. auch diesen Bugfix enthalten wird.

Viele Grüße aus Schöppingen

cool Michael Telgmann

1 „Gefällt mir“

@Michael Telgmann schrieb:

Hallo Sebastian,

im RC1 ist das ein Fehler der bereits behoben sein sollte. Hier dazu der Commit: https://github.com/shopware/shopware/commit/22f5cacc17358161d7d0109de679973cba2c8906

In den nächsten Tagen wird es einen weiteren RC geben, der u.a. auch diesen Bugfix enthalten wird.

Viele Grüße aus Schöppingen

cool Michael Telgmann

Hallo Michael,

ich danke dir für die Info und das ihr euch drum gekümmert habt. Hab deine angesprochene Änderung mal in die Shopware Version 5.2.0 RC1 eingespielt, jetzt funktioniert es, wie es soll und vorher auch hat. Ich danke dir.

Dann warte ich mal auf die Shopware Version 5.2.0 RC2, um dort noch einmal alles zu prüfen, bevor die „Endfreigabe“ für die Shopware Version 5.2.0 kommt Smile.

Beste Grüße

Sebastian