diff options
author | marcus <marcus@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2009-03-03 11:18:09 +0000 |
---|---|---|
committer | marcus <marcus@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2009-03-03 11:18:09 +0000 |
commit | 52b6fde352fd0282a8a3ddfc3f2ff218d97f7dbb (patch) | |
tree | 6a0499f00af2f806ab5a0b17b0714063b90c1652 /actions/admin | |
parent | 106050295f1363b94d69eda97e6cfb611b66a65e (diff) | |
download | elgg-52b6fde352fd0282a8a3ddfc3f2ff218d97f7dbb.tar.gz elgg-52b6fde352fd0282a8a3ddfc3f2ff218d97f7dbb.tar.bz2 |
Closes #831: Plugin view location is now cached in a file in dataroot and is invalidated on upgrade and plugin enable/disable/reorder. This means that views no longer have to be discovered on boot - reducing file IO from crazy amounts to 1. This also helps make adding new plugins a linear event.
git-svn-id: https://code.elgg.org/elgg/trunk@3025 36083f99-b078-4883-b0ff-0f9b5a30f544
Diffstat (limited to 'actions/admin')
-rw-r--r-- | actions/admin/plugins/disable.php | 5 | ||||
-rw-r--r-- | actions/admin/plugins/disableall.php | 5 | ||||
-rw-r--r-- | actions/admin/plugins/enable.php | 7 | ||||
-rw-r--r-- | actions/admin/plugins/enableall.php | 7 | ||||
-rw-r--r-- | actions/admin/plugins/reorder.php | 5 |
5 files changed, 23 insertions, 6 deletions
diff --git a/actions/admin/plugins/disable.php b/actions/admin/plugins/disable.php index cbe75a665..32ae451a7 100644 --- a/actions/admin/plugins/disable.php +++ b/actions/admin/plugins/disable.php @@ -32,7 +32,10 @@ register_error(sprintf(elgg_echo('admin:plugins:disable:no'), $p)); } - elgg_view_regenerate_simplecache();
+ elgg_view_regenerate_simplecache(); + + $cache = elgg_get_filepath_cache(); + $cache->delete('view_paths');
forward($_SERVER['HTTP_REFERER']); exit; diff --git a/actions/admin/plugins/disableall.php b/actions/admin/plugins/disableall.php index efb91f773..a01b74fa5 100644 --- a/actions/admin/plugins/disableall.php +++ b/actions/admin/plugins/disableall.php @@ -29,7 +29,10 @@ register_error(sprintf(elgg_echo('admin:plugins:disable:no'), $p)); } - elgg_view_regenerate_simplecache();
+ elgg_view_regenerate_simplecache(); + + $cache = elgg_get_filepath_cache(); + $cache->delete('view_paths');
forward($_SERVER['HTTP_REFERER']); exit; diff --git a/actions/admin/plugins/enable.php b/actions/admin/plugins/enable.php index 072924eec..d81ab0551 100644 --- a/actions/admin/plugins/enable.php +++ b/actions/admin/plugins/enable.php @@ -32,8 +32,11 @@ register_error(sprintf(elgg_echo('admin:plugins:enable:no'), $p)); } - elgg_view_regenerate_simplecache();
- + elgg_view_regenerate_simplecache(); + + $cache = elgg_get_filepath_cache(); + $cache->delete('view_paths'); + forward($_SERVER['HTTP_REFERER']); exit; ?>
\ No newline at end of file diff --git a/actions/admin/plugins/enableall.php b/actions/admin/plugins/enableall.php index 5e0d8c3b5..f31b4593d 100644 --- a/actions/admin/plugins/enableall.php +++ b/actions/admin/plugins/enableall.php @@ -11,7 +11,7 @@ */ require_once(dirname(dirname(dirname(dirname(__FILE__)))) . "/engine/start.php"); - + // block non-admin users admin_gatekeeper(); @@ -29,7 +29,12 @@ register_error(sprintf(elgg_echo('admin:plugins:enable:no'), $p)); } + // Regen view cache elgg_view_regenerate_simplecache(); + + // Regen paths cache + $cache = elgg_get_filepath_cache(); + $cache->delete('view_paths'); forward($_SERVER['HTTP_REFERER']); exit; diff --git a/actions/admin/plugins/reorder.php b/actions/admin/plugins/reorder.php index be5981394..0e328f54d 100644 --- a/actions/admin/plugins/reorder.php +++ b/actions/admin/plugins/reorder.php @@ -46,7 +46,10 @@ else
register_error(sprintf(elgg_echo('admin:plugins:reorder:no'), $plugin));
- elgg_view_regenerate_simplecache();
+ elgg_view_regenerate_simplecache(); + + $cache = elgg_get_filepath_cache(); + $cache->delete('view_paths');
forward($_SERVER['HTTP_REFERER']);
|