From 71dc8cbf9eecb4de149bc96bb5758b866116b1c8 Mon Sep 17 00:00:00 2001 From: cash Date: Sun, 28 Nov 2010 22:03:18 +0000 Subject: Fixes #2173 #2507 integrated the ie and admin stylesheets into the new simplecache code git-svn-id: http://code.elgg.org/elgg/trunk@7465 36083f99-b078-4883-b0ff-0f9b5a30f544 --- engine/lib/views.php | 52 ++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 42 insertions(+), 10 deletions(-) (limited to 'engine/lib/views.php') diff --git a/engine/lib/views.php b/engine/lib/views.php index 6c4cec0f2..e0e10bcb7 100644 --- a/engine/lib/views.php +++ b/engine/lib/views.php @@ -399,7 +399,7 @@ function elgg_view_exists($view, $viewtype = '', $recurse = true) { * @warning Simple cached views must take no parameters and return * the same content no matter who is logged in. * - * @note CSS and the basic JS views are automatically cached. + * @note CSS and the basic JS views are cached by the engine. * * @param string $viewname View name * @@ -421,6 +421,27 @@ function elgg_view_register_simplecache($viewname) { $CONFIG->views->simplecache[] = $viewname; } +/** + * Get the URL for the cached file + * + * @param string $type The file type: css or js + * @param string $view The view name + * @return string + * @since 1.8.0 + */ +function elgg_view_get_simplecache_url($type, $view) { + global $CONFIG; + $lastcache = $CONFIG->lastcache; + + if (elgg_view_is_simplecache_enabled()) { + $viewtype = elgg_get_viewtype(); + $url = elgg_get_site_url() . "cache/$type/$view/$viewtype/$view.$lastcache.$type"; + } else { + $url = elgg_get_site_url() . "pg/$type/$view.$lastcache.$type"; + } + return $url; +} + /** * Regenerates the simple cache. * @@ -483,6 +504,22 @@ function elgg_view_regenerate_simplecache($viewtype = NULL) { unset($CONFIG->pagesetupdone); } +/** + * Is simple cache enabled + * + * @return bool + * @since 1.8.0 + */ +function elgg_view_is_simplecache_enabled() { + global $CONFIG; + + if ($CONFIG->simplecache_enabled) { + return true; + } + + return false; +} + /** * Enables the simple cache. * @@ -1329,17 +1366,10 @@ function elgg_is_valid_view_type($view_type) { * Add the core Elgg head elements that could be cached */ function elgg_views_register_core_head_elements() { - global $CONFIG; - - $base = elgg_get_site_url(); - $lastcache = $CONFIG->lastcache; - $viewtype = elgg_get_viewtype(); - - //$url = "{$base}_css/js.php?lastcache=$lastcache&js=initialise_elgg&viewtype=$viewtype"; - $url = "{$base}cache/js/initialise_elgg/$viewtype/initialise_elgg.$lastcache.js"; + $url = elgg_view_get_simplecache_url('js', 'initialise_elgg'); elgg_register_js($url, 'initialise_elgg'); - $url = "{$base}cache/css/elgg/$viewtype/elgg.$lastcache.css"; + $url = elgg_view_get_simplecache_url('css', 'elgg'); elgg_register_css($url, 'elgg'); } @@ -1355,6 +1385,8 @@ function elgg_views_boot() { global $CONFIG; elgg_view_register_simplecache('css/elgg'); + elgg_view_register_simplecache('ie/elgg'); + elgg_view_register_simplecache('ie6/elgg'); elgg_view_register_simplecache('js/friendsPickerv1'); elgg_view_register_simplecache('js/initialise_elgg'); -- cgit v1.2.3