public function test_getDimensions_shouldOnlyLoadAllConversionDimensionsFromACertainPlugin() { Manager::getInstance()->loadPlugins(array('ExampleTracker')); $plugin = Manager::getInstance()->loadPlugin('ExampleTracker'); $dimensions = ConversionDimension::getDimensions($plugin); $this->assertGreaterThanOrEqual(1, count($dimensions)); foreach ($dimensions as $dimension) { $this->assertInstanceOf('\\Piwik\\Plugin\\Dimension\\ConversionDimension', $dimension); $this->assertStringStartsWith('Piwik\\Plugins\\ExampleTracker\\Columns', get_class($dimension)); } }
/** * @param $pluginName */ private function executePluginUninstall($pluginName) { try { $plugin = $this->getLoadedPlugin($pluginName); $plugin->uninstall(); } catch (\Exception $e) { } if (empty($plugin)) { return; } try { foreach (VisitDimension::getDimensions($plugin) as $dimension) { $this->uninstallDimension($dimension); } } catch (\Exception $e) { } try { foreach (ActionDimension::getDimensions($plugin) as $dimension) { $this->uninstallDimension($dimension); } } catch (\Exception $e) { } try { foreach (ConversionDimension::getDimensions($plugin) as $dimension) { $this->uninstallDimension($dimension); } } catch (\Exception $e) { } }
/** * @param $pluginName */ private function executePluginUninstall($pluginName) { try { $plugin = $this->getLoadedPlugin($pluginName); $plugin->uninstall(); } catch (\Exception $e) { } if (empty($plugin)) { return; } try { $visitDimensions = VisitDimension::getAllDimensions(); foreach (VisitDimension::getDimensions($plugin) as $dimension) { $this->uninstallDimension(VisitDimension::INSTALLER_PREFIX, $dimension, $visitDimensions); } } catch (\Exception $e) { } try { $actionDimensions = ActionDimension::getAllDimensions(); foreach (ActionDimension::getDimensions($plugin) as $dimension) { $this->uninstallDimension(ActionDimension::INSTALLER_PREFIX, $dimension, $actionDimensions); } } catch (\Exception $e) { } try { $conversionDimensions = ConversionDimension::getAllDimensions(); foreach (ConversionDimension::getDimensions($plugin) as $dimension) { $this->uninstallDimension(ConversionDimension::INSTALLER_PREFIX, $dimension, $conversionDimensions); } } catch (\Exception $e) { } }
public static function getDimensions(Plugin $plugin) { $dimensions = array(); foreach (VisitDimension::getDimensions($plugin) as $dimension) { $dimensions[] = $dimension; } foreach (ActionDimension::getDimensions($plugin) as $dimension) { $dimensions[] = $dimension; } foreach (ConversionDimension::getDimensions($plugin) as $dimension) { $dimensions[] = $dimension; } return $dimensions; }