Skip to content
Extraits de code Groupes Projets
Valider fcfea531 rédigé par mattpiwik's avatar mattpiwik
Parcourir les fichiers

Fixes #1438 Smarty template_c files should be purged on plugin install/uninstall

git-svn-id: http://dev.piwik.org/svn/trunk@2403 59fd770c-687e-43c8-a1e3-f5a4ff64c105
parent 9c879fe3
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -121,6 +121,7 @@ class Piwik_PluginsManager ...@@ -121,6 +121,7 @@ class Piwik_PluginsManager
// Delete merged js/css files to force regenerations to exclude the deactivated plugin // Delete merged js/css files to force regenerations to exclude the deactivated plugin
Piwik_AssetManager::removeMergedAssets(); Piwik_AssetManager::removeMergedAssets();
Piwik_View::clearCompiledTemplates();
} }
public function installLoadedPlugins() public function installLoadedPlugins()
...@@ -160,7 +161,8 @@ class Piwik_PluginsManager ...@@ -160,7 +161,8 @@ class Piwik_PluginsManager
Zend_Registry::get('config')->Plugins = $plugins; Zend_Registry::get('config')->Plugins = $plugins;
// Delete merged js/css files to force regenerations to include the activated plugin // Delete merged js/css files to force regenerations to include the activated plugin
Piwik_AssetManager::removeMergedAssets(); Piwik_AssetManager::removeMergedAssets();
Piwik_View::clearCompiledTemplates();
} }
public function loadPlugins( array $pluginsToLoad ) public function loadPlugins( array $pluginsToLoad )
......
...@@ -201,9 +201,10 @@ class Piwik_View implements Piwik_iView ...@@ -201,9 +201,10 @@ class Piwik_View implements Piwik_iView
/** /**
* Clear compiled Smarty templates * Clear compiled Smarty templates
*/ */
public function clearCompiledTemplates() static public function clearCompiledTemplates()
{ {
$this->smarty->clear_compiled_tpl(); $view = Piwik_View::factory();
$view->smarty->clear_compiled_tpl();
} }
/* /*
...@@ -215,8 +216,6 @@ class Piwik_View implements Piwik_iView ...@@ -215,8 +216,6 @@ class Piwik_View implements Piwik_iView
} }
return false; return false;
} }
public function setCaching($caching) public function setCaching($caching)
{ {
$this->smarty->caching = $caching; $this->smarty->caching = $caching;
...@@ -271,7 +270,7 @@ class Piwik_View implements Piwik_iView ...@@ -271,7 +270,7 @@ class Piwik_View implements Piwik_iView
* @param $templateName Template name (e.g., 'index') * @param $templateName Template name (e.g., 'index')
* @param $viewType View type (e.g., Piwik_View::CLI) * @param $viewType View type (e.g., Piwik_View::CLI)
*/ */
static public function factory( $templateName, $viewType = null) static public function factory( $templateName = null, $viewType = null)
{ {
Piwik_PostEvent('View.getViewType', $viewType); Piwik_PostEvent('View.getViewType', $viewType);
...@@ -320,12 +319,15 @@ class Piwik_View implements Piwik_iView ...@@ -320,12 +319,15 @@ class Piwik_View implements Piwik_iView
if($viewType != self::MOBILE) if($viewType != self::MOBILE)
{ {
$templateFile = $path.'/templates/'.$templateName.'.tpl'; $templateFile = $path.'/templates/'.$templateName.'.tpl';
if(!file_exists($templateFile))
{
throw new Exception('Template not found: '.$templateFile);
}
} }
// Specified template not found
// We allow for no specified template
if(!empty($templateName)
&& !file_exists($templateFile))
{
throw new Exception('Template not found: '.$templateFile);
}
return new Piwik_View($templateFile); return new Piwik_View($templateFile);
} }
} }
...@@ -298,6 +298,7 @@ class Piwik_CoreUpdater_Controller extends Piwik_Controller ...@@ -298,6 +298,7 @@ class Piwik_CoreUpdater_Controller extends Piwik_Controller
{ {
// Delete merged js/css files to force regenerations based on new versions of css/js files // Delete merged js/css files to force regenerations based on new versions of css/js files
Piwik_AssetManager::removeMergedAssets(); Piwik_AssetManager::removeMergedAssets();
Piwik_View::clearCompiledTemplates();
$this->loadAndExecuteUpdateFiles($updater, $componentsWithUpdateFile); $this->loadAndExecuteUpdateFiles($updater, $componentsWithUpdateFile);
......
...@@ -74,6 +74,7 @@ class Piwik_Installation_Controller extends Piwik_Controller ...@@ -74,6 +74,7 @@ class Piwik_Installation_Controller extends Piwik_Controller
{ {
// Delete merged js/css files to force regenerations based on updated activated plugin list // Delete merged js/css files to force regenerations based on updated activated plugin list
Piwik_AssetManager::removeMergedAssets(); Piwik_AssetManager::removeMergedAssets();
Piwik_View::clearCompiledTemplates();
$view = new Piwik_Installation_View( $view = new Piwik_Installation_View(
$this->pathView . 'welcome.tpl', $this->pathView . 'welcome.tpl',
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter