add a check and a warning if setlocale is working

This commit is contained in:
Frank Karlitschek 2012-12-19 15:10:33 +01:00
parent e73a47a824
commit 196f1c3786
4 changed files with 33 additions and 1 deletions

View File

@ -474,6 +474,11 @@ class OC{
exit;
}
}
// write error into log if locale can't be set
if(OC_Util::issetlocaleworking()==false) {
OC_Log::write('core', 'setting locate to en_US.UTF-8 failed. Support is probably not installed on your system', OC_Log::ERROR);
}
}
/**

View File

@ -582,6 +582,18 @@ class OC_Util {
}
/**
* Check if the setlocal call doesn't work. This can happen if the right local packages are not available on the server.
*/
public static function issetlocaleworking() {
$result=setlocale(LC_ALL, 'en_US.UTF-8');
if($result==false) {
return(false);
}else{
return(true);
}
}
/**
* Check if the ownCloud server can connect to the internet
*/

View File

@ -30,6 +30,7 @@ $tmpl->assign('entries', $entries);
$tmpl->assign('entriesremain', $entriesremain);
$tmpl->assign('htaccessworking', $htaccessworking);
$tmpl->assign('internetconnectionworking', OC_Util::isinternetconnectionworking());
$tmpl->assign('islocaleworking', OC_Util::issetlocaleworking());
$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'));

View File

@ -8,6 +8,7 @@ $levels=array('Debug','Info','Warning','Error', 'Fatal');
<?php
// is htaccess working ?
if(!$_['htaccessworking']) {
?>
<fieldset class="personalblock">
@ -20,9 +21,22 @@ if(!$_['htaccessworking']) {
</fieldset>
<?php
}
?>
// is locale working ?
if(!$_['islocaleworking']) {
?>
<fieldset class="personalblock">
<legend><strong><?php echo $l->t('Locale not working');?></strong></legend>
<span class="connectionwarning">
<?php echo $l->t('This ownCloud server can\'t set system locale to "en_US.UTF-8". This means that there might be problems with certain caracters in file names. We strongly suggest to install the requirend packages on your system to support en_US.UTF-8.'); ?>
</span>
</fieldset>
<?php
}
// is internet connection working ?
if(!$_['internetconnectionworking']) {
?>
<fieldset class="personalblock">