Fixed #905: Presenting image size limit to user.
This commit is contained in:
parent
4ced74dc91
commit
746a5d7507
|
@ -75,7 +75,7 @@ class AvatarsettingsAction extends AccountSettingsAction
|
||||||
|
|
||||||
function getInstructions()
|
function getInstructions()
|
||||||
{
|
{
|
||||||
return _('You can upload your personal avatar.');
|
return _('You can upload your personal avatar. The maximum file size is '.ImageFile::maxFileSize().'.');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -152,7 +152,7 @@ class GrouplogoAction extends Action
|
||||||
|
|
||||||
function getInstructions()
|
function getInstructions()
|
||||||
{
|
{
|
||||||
return _('You can upload a logo image for your group.');
|
return _('You can upload a logo image for your group. The maximum file size is '.ImageFile::maxFileSize().'.');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -72,7 +72,7 @@ class ImageFile
|
||||||
break;
|
break;
|
||||||
case UPLOAD_ERR_INI_SIZE:
|
case UPLOAD_ERR_INI_SIZE:
|
||||||
case UPLOAD_ERR_FORM_SIZE:
|
case UPLOAD_ERR_FORM_SIZE:
|
||||||
throw new Exception(_('That file is too big.'));
|
throw new Exception(_('That file is too big. The maximum file size is '.$this->maxFileSize().'.'));
|
||||||
return;
|
return;
|
||||||
case UPLOAD_ERR_PARTIAL:
|
case UPLOAD_ERR_PARTIAL:
|
||||||
@unlink($_FILES[$param]['tmp_name']);
|
@unlink($_FILES[$param]['tmp_name']);
|
||||||
|
@ -182,4 +182,27 @@ class ImageFile
|
||||||
{
|
{
|
||||||
@unlink($this->filename);
|
@unlink($this->filename);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static function maxFileSize()
|
||||||
|
{
|
||||||
|
$limit = min(ImageFile::strToInt(ini_get('post_max_size')), ImageFile::strToInt(ini_get('upload_max_filesize')));
|
||||||
|
return ($limit/(1024*1024)).'MB';
|
||||||
|
}
|
||||||
|
|
||||||
|
static function strToInt($str)
|
||||||
|
{
|
||||||
|
$unit = substr($str, -1);
|
||||||
|
$num = substr($str, 0, -1);
|
||||||
|
|
||||||
|
switch(strtoupper($unit)){
|
||||||
|
case 'G':
|
||||||
|
$num *= 1024;
|
||||||
|
case 'M':
|
||||||
|
$num *= 1024;
|
||||||
|
case 'K':
|
||||||
|
$num *= 1024;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $num;
|
||||||
|
}
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user