From e45b5c14dbb09dd200d66ff21de1bba960113c68 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sun, 4 Aug 2013 18:24:20 +0200 Subject: added connectivity recheck --- lib/plugins/extension/admin.php | 7 +++++++ lib/plugins/extension/helper/repository.php | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) (limited to 'lib/plugins/extension') diff --git a/lib/plugins/extension/admin.php b/lib/plugins/extension/admin.php index 373f90183..6cad58595 100644 --- a/lib/plugins/extension/admin.php +++ b/lib/plugins/extension/admin.php @@ -39,6 +39,13 @@ class admin_plugin_extension extends DokuWiki_Admin_Plugin { $repository = $this->loadHelper('extension_repository'); $repository->init(); + if(!$repository->hasAccess()){ + $url = helper_plugin_extension_list::tabURL('', array('purge'=>1)); + + msg('The DokuWiki extension repository can not be reached currently. + Online Features are not available. [retry]', -1); + } + /* @var helper_plugin_extension_extension $extension */ $extension = $this->loadHelper('extension_extension'); diff --git a/lib/plugins/extension/helper/repository.php b/lib/plugins/extension/helper/repository.php index 459d7cbec..a5012ccb5 100644 --- a/lib/plugins/extension/helper/repository.php +++ b/lib/plugins/extension/helper/repository.php @@ -65,7 +65,7 @@ class helper_plugin_extension_repository extends DokuWiki_Plugin { if ($this->has_access === null) { $cache = new cache('##extension_manager###hasAccess', 'repo'); $result = null; - if (!$cache->useCache(array('age' => 3600 * 24))) { + if (!$cache->useCache(array('age' => 3600 * 24, 'purge'=>1))) { $httpclient = new DokuHTTPClient(); $httpclient->timeout = 5; $data = $httpclient->get(EXTENSION_REPOSITORY_API.'?cmd=ping'); -- cgit v1.2.3