/** * 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'."); } }