Esempio n. 1
0
 public function test_prioritySort()
 {
     $buckets = array('themes/base.css', 'themes/', 'libs/base.css', 'libs/', 'plugins/');
     $data = array('plugins/xyz', 'plugins/abc', 'themes/base.css', 'libs/xyz', 'libs/base.css', 'libs/abc', 'plugins/xyz', 'themes/test', 'libs/xyz');
     $expected = array('themes/base.css', 'themes/test', 'libs/base.css', 'libs/xyz', 'libs/abc', 'plugins/xyz', 'plugins/abc');
     $this->assertTrue(Piwik_AssetManager::prioritySort($buckets, $data) == $expected);
 }
/**
 * Sends AssetManager.getCssFiles or AssetManager.getJsFiles events, gathers assets and include them.
 * 
 * Examples:
 * <pre>
 * 		{includeAssets type="css"}
 * </pre>
 * 
 * @throws Exception if the type parameter is not present or invalid
 * @param string $type The type of the assets to include
 */
function smarty_function_includeAssets($params, &$smarty)
{
    if (!isset($params['type'])) {
        throw new Exception("The smarty function includeAssets needs a 'type' parameter.");
    }
    $assetType = strtolower($params['type']);
    switch ($assetType) {
        case 'css':
            return Piwik_AssetManager::getCssAssets();
        case 'js':
            return Piwik_AssetManager::getJsAssets();
        default:
            throw new Exception("The smarty function includeAssets 'type' parameter needs to be either 'css' or 'js'.");
    }
}
Esempio n. 3
0
 /**
  * Output the merged JavaScript file.
  * This method is called when the asset manager is enabled.
  * 
  * @see core/AssetManager.php
  */
 public function getJs()
 {
     $jsMergedFile = Piwik_AssetManager::getMergedJsFileLocation();
     Piwik::serveStaticFile($jsMergedFile, "application/javascript; charset=UTF-8");
 }
Esempio n. 4
0
 /**
  * Called on Core install, update, plugin enable/disable
  * Will clear all cache that could be affected by the change in configuration being made
  */
 public static function deleteAllCacheOnUpdate()
 {
     Piwik_AssetManager::removeMergedAssets();
     Piwik_View::clearCompiledTemplates();
     Piwik_Common::deleteTrackerCache();
 }