Return false bei function activate funktioniert nicht in neuem Plugin-System

Wir wollen vor dem Aktivieren abfragen, ob ein anderes Plugin aktiviert ist.
Falls dem nicht so sein sollte, soll das Plugin nicht aktiviert werden dürfen.

/**
 * activate function
 */	
public function activate(ActivateContext $context)
{
	...
	
	/** abfragen ob plugin installiert ist */
	if (!$plugin->getActive()) {
		 return false;
	}
}

Leider greift "return false" in dem neuen Plugin-System nicht und das Plugin wird trotzdem aktiviert.

Ok, so funktioniert es, wenn das die finale Lösung sein sollte:

/**
 * activate function
 */	
public function activate(ActivateContext $context)
{
	...
	
	/** abfragen ob plugin installiert ist */
	if (!$plugin->getActive()) {
		 throw new \RuntimeException('Bitte aktivieren Sie vor der Installation das XY-Plugin.');
	}
}

 

Du kannst in der plugin.xml abhängigkeiten zu Plugins definieren