diff --git a/lib/util.php b/lib/util.php index 40b44bf9d6..8574ec31d8 100755 --- a/lib/util.php +++ b/lib/util.php @@ -584,6 +584,33 @@ class OC_Util { } } + + /** + * Check if the ownCloud server can connect to the internet + */ + public static function isinternetconnectionworking() { + + // try to connect to owncloud.org to see if http connections to the internet are possible. + $connected = @fsockopen("www.owncloud.org", 80); + if ($connected){ + fclose($connected); + return true; + }else{ + + // second try in case one server is down + $connected = @fsockopen("apps.owncloud.com", 80); + if ($connected){ + fclose($connected); + return true; + }else{ + return false; + } + + } + + } + + /** * @brief Generates a cryptographical secure pseudorandom string * @param Int with the length of the random string diff --git a/settings/admin.php b/settings/admin.php index c704704ed3..0cf449ef2b 100755 --- a/settings/admin.php +++ b/settings/admin.php @@ -29,6 +29,7 @@ $tmpl->assign('loglevel', OC_Config::getValue( "loglevel", 2 )); $tmpl->assign('entries', $entries); $tmpl->assign('entriesremain', $entriesremain); $tmpl->assign('htaccessworking', $htaccessworking); +$tmpl->assign('internetconnectionworking', OC_Util::isinternetconnectionworking()); $tmpl->assign('backgroundjobs_mode', OC_Appconfig::getValue('core', 'backgroundjobs_mode', 'ajax')); $tmpl->assign('shareAPIEnabled', OC_Appconfig::getValue('core', 'shareapi_enabled', 'yes')); $tmpl->assign('allowLinks', OC_Appconfig::getValue('core', 'shareapi_allow_links', 'yes')); diff --git a/settings/css/settings.css b/settings/css/settings.css index f5ee2124f0..560862fa12 100644 --- a/settings/css/settings.css +++ b/settings/css/settings.css @@ -65,5 +65,6 @@ span.version { margin-left:1em; margin-right:1em; color:#555; } /* ADMIN */ span.securitywarning {color:#C33; font-weight:bold; } +span.connectionwarning {color:#933; font-weight:bold; } input[type=radio] { width:1em; } table.shareAPI td { padding-bottom: 0.8em; } diff --git a/settings/templates/admin.php b/settings/templates/admin.php index 300d6093d6..9c4ee0bf68 100644 --- a/settings/templates/admin.php +++ b/settings/templates/admin.php @@ -22,6 +22,20 @@ if(!$_['htaccessworking']) { } ?> + +
+ t('Internet connection not working');?> + + + t('This ownCloud server has no working internet connection. This means that some of the features like mounting of external storage, notifications about updates or installation of 3rd party apps donĀ“t work. Accessing files from remote and sending of notification emails might also not work. We suggest to enable internet connection for this server if you want to have all features of ownCloud.'); ?> + + +
+