diff options
author | marcus <marcus@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2009-04-08 17:16:36 +0000 |
---|---|---|
committer | marcus <marcus@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2009-04-08 17:16:36 +0000 |
commit | 4cfe0887d68f3d89d63e2d7a857fc12186e6fae1 (patch) | |
tree | 7763205315543230b23d482848c37d8924cd465a /engine/lib/elgglib.php | |
parent | b24464ac9d6bd12b78740197531b582e0fdcd5d4 (diff) | |
download | elgg-4cfe0887d68f3d89d63e2d7a857fc12186e6fae1.tar.gz elgg-4cfe0887d68f3d89d63e2d7a857fc12186e6fae1.tar.bz2 |
Close #968: View path cache can now be turned on and off
git-svn-id: https://code.elgg.org/elgg/trunk@3197 36083f99-b078-4883-b0ff-0f9b5a30f544
Diffstat (limited to 'engine/lib/elgglib.php')
-rw-r--r-- | engine/lib/elgglib.php | 50 |
1 files changed, 44 insertions, 6 deletions
diff --git a/engine/lib/elgglib.php b/engine/lib/elgglib.php index 81d2290f6..392f6cd8b 100644 --- a/engine/lib/elgglib.php +++ b/engine/lib/elgglib.php @@ -431,8 +431,14 @@ */ function elgg_filepath_cache_save($data) { - $cache = elgg_get_filepath_cache(); - return $cache->save('view_paths', $data); + global $CONFIG; + + if ($CONFIG->viewpath_cache_enabled) { + $cache = elgg_get_filepath_cache(); + return $cache->save('view_paths', $data); + } + + return false; } /** @@ -441,16 +447,48 @@ */ function elgg_filepath_cache_load() { - $cache = elgg_get_filepath_cache(); - $cached_view_paths = $cache->load('view_paths'); + global $CONFIG; - if ($cached_view_paths) - return $cached_view_paths; + if ($CONFIG->viewpath_cache_enabled) { + $cache = elgg_get_filepath_cache(); + $cached_view_paths = $cache->load('view_paths'); + + if ($cached_view_paths) + return $cached_view_paths; + } return NULL; } /** + * Enable the filepath cache. + * + */ + function elgg_enable_filepath_cache() + { + global $CONFIG; + + datalist_set('viewpath_cache_enabled',1); + $CONFIG->viewpath_cache_enabled = 1; + elgg_filepath_cache_reset(); + + } + + /** + * Disable filepath cache. + * + */ + function elgg_disable_filepath_cache() + { + global $CONFIG; + + datalist_set('viewpath_cache_enabled',0); + $CONFIG->viewpath_cache_enabled = 0; + elgg_filepath_cache_reset(); + + } + + /** * Internal function for retrieving views used by elgg_view_tree * * @param unknown_type $dir |