Upload langs

Перевод языковых связанных с загрузкой файлов.
This commit is contained in:
Exile 2014-08-31 21:11:24 +04:00
commit 72b4307268
6 changed files with 91 additions and 44 deletions

View file

@ -23,55 +23,51 @@ class upload_common
var $file_size = ''; var $file_size = '';
var $ext_ids = array(); // array_flip($bb_cfg['file_id_ext']) var $ext_ids = array(); // array_flip($bb_cfg['file_id_ext'])
var $errors = array(); var $errors = array();
var $img_types = array(1=>'gif', 2=>'jpg', 3=>'png', 6=>'bmp', 7=>'tiff', 8=>'tiff'); var $img_types = array(
1 => 'gif',
2 => 'jpg',
3 => 'png',
6 => 'bmp',
7 => 'tiff',
8 => 'tiff',
);
function init ($cfg = array(), $post_params = array(), $uploaded_only = true) function init ($cfg = array(), $post_params = array(), $uploaded_only = true)
{ {
global $bb_cfg, $lang; global $bb_cfg, $lang;
$lang['upload_error_common'] = 'Ошибка загрузки файла';
$lang['upload_errors'] = array(
UPLOAD_ERR_INI_SIZE => 'превышен максимальный размер файлов для сервера',
UPLOAD_ERR_FORM_SIZE => 'превышен максимальный размер загружаемого файла',
UPLOAD_ERR_PARTIAL => 'файл был загружен частично',
UPLOAD_ERR_NO_FILE => 'файл не был загружен',
UPLOAD_ERR_NO_TMP_DIR => 'временная директория не найдена',
UPLOAD_ERR_CANT_WRITE => 'ошибка записи',
UPLOAD_ERR_EXTENSION => 'загрузка остановлена из-за расширения',
);
$this->cfg = array_merge($this->cfg, $cfg); $this->cfg = array_merge($this->cfg, $cfg);
$this->file = $post_params; $this->file = $post_params;
// upload errors from $_FILES // upload errors from $_FILES
if ($this->file['error']) if ($this->file['error'])
{ {
$msg = $lang['upload_error_common']; $msg = $lang['UPLOAD_ERROR_COMMON'];
$msg .= ($err_desc =& $lang['upload_errors'][$this->file['error']]) ? " ($err_desc)" : ''; $msg .= ($err_desc =& $lang['UPLOAD_ERRORS'][$this->file['error']]) ? " ($err_desc)" : '';
$this->errors[] = $msg; $this->errors[] = $msg;
return false; return false;
} }
// file_exists // file_exists
if (!file_exists($this->file['tmp_name'])) if (!file_exists($this->file['tmp_name']))
{ {
$this->errors[] = "uploaded file not exists: {$this->file['tmp_name']}"; $this->errors[] = "Uploaded file not exists: {$this->file['tmp_name']}";
return false; return false;
} }
// size // size
if (!$this->file_size = filesize($this->file['tmp_name'])) if (!$this->file_size = filesize($this->file['tmp_name']))
{ {
$this->errors[] = "uploaded file is empty: {$this->file['tmp_name']}"; $this->errors[] = "Uploaded file is empty: {$this->file['tmp_name']}";
return false; return false;
} }
if ($this->cfg['max_size'] && $this->file_size > $this->cfg['max_size']) if ($this->cfg['max_size'] && $this->file_size > $this->cfg['max_size'])
{ {
$this->errors[] = 'Загруженный файл превышает максимальный размер '. humn_size($this->cfg['max_size']); $this->errors[] = sprintf($lang['UPLOAD_ERROR_SIZE'], humn_size($this->cfg['max_size']));
return false; return false;
} }
// is_uploaded_file // is_uploaded_file
if ($uploaded_only && !is_uploaded_file($this->file['tmp_name'])) if ($uploaded_only && !is_uploaded_file($this->file['tmp_name']))
{ {
$this->errors[] = "not uploaded file: {$this->file['tmp_name']}"; $this->errors[] = "Not uploaded file: {$this->file['tmp_name']}";
return false; return false;
} }
// get ext // get ext
@ -89,7 +85,7 @@ class upload_common
// redefine ext // redefine ext
if (!$width || !$height || !$type || !isset($this->img_types[$type])) if (!$width || !$height || !$type || !isset($this->img_types[$type]))
{ {
$this->errors[] = 'Недопустимый тип файла изображения'; $this->errors[] = $lang['UPLOAD_ERROR_FORMAT'];
return false; return false;
} }
$this->file_ext = $this->img_types[$type]; $this->file_ext = $this->img_types[$type];
@ -97,20 +93,20 @@ class upload_common
// width & height // width & height
if (($this->cfg['max_width'] && $width > $this->cfg['max_width']) || ($this->cfg['max_height'] && $height > $this->cfg['max_height'])) if (($this->cfg['max_width'] && $width > $this->cfg['max_width']) || ($this->cfg['max_height'] && $height > $this->cfg['max_height']))
{ {
$this->errors[] = "Размеры изображения превышают максимально допустимые {$this->cfg['max_width']}x{$this->cfg['max_height']} px"; $this->errors[] = sprintf($lang['UPLOAD_ERROR_DIMENSIONS'], $this->cfg['max_width'], $this->cfg['max_height']);
return false; return false;
} }
} }
else else
{ {
$this->errors[] = 'Загруженный файл не является изображением'; $this->errors[] = $lang['UPLOAD_ERROR_NOT_IMAGE'];
return false; return false;
} }
} }
// check ext // check ext
if (!isset($this->ext_ids[$this->file_ext]) || !in_array($this->file_ext, $this->cfg['allowed_ext'], true)) if (!isset($this->ext_ids[$this->file_ext]) || !in_array($this->file_ext, $this->cfg['allowed_ext'], true))
{ {
$this->errors[] = 'Расширение '. htmlCHR($this->file_ext) .' для загружаемых файлов не разрешено'; $this->errors[] = sprintf($lang['UPLOAD_ERROR_NOT_ALLOWED'], htmlCHR($this->file_ext));
return false; return false;
} }
$this->file_ext_id = $this->ext_ids[$this->file_ext]; $this->file_ext_id = $this->ext_ids[$this->file_ext];
@ -135,7 +131,7 @@ class upload_common
} }
else else
{ {
trigger_error("invalid upload mode: $mode", E_USER_ERROR); trigger_error("Invalid upload mode: $mode", E_USER_ERROR);
} }
} }

View file

@ -585,7 +585,8 @@ $lang['RESET_AUTOLOGIN_EXPL'] = 'including all the places you\'ve visited the fo
$lang['AVATAR'] = 'Avatar'; $lang['AVATAR'] = 'Avatar';
$lang['AVATAR_EXPLAIN'] = 'Displays a small graphic image below your details in posts. Only one image can be displayed at a time, its width can be no greater than %d pixels, the height no greater than %d pixels, and the file size no more than %d KB.'; $lang['AVATAR_EXPLAIN'] = 'Displays a small graphic image below your details in posts. Only one image can be displayed at a time, its width can be no greater than %d pixels, the height no greater than %d pixels, and the file size no more than %d KB.';
$lang['UPLOAD_AVATAR_FILE'] = 'Upload Avatar'; $lang['AVATAR_DELETE'] = 'Delete avatar';
$lang['UPLOAD_AVATAR_FILE'] = 'Upload avatar';
$lang['SELECT_AVATAR'] = 'Select avatar'; $lang['SELECT_AVATAR'] = 'Select avatar';
$lang['RETURN_PROFILE'] = 'Return to profile'; $lang['RETURN_PROFILE'] = 'Return to profile';
@ -2916,3 +2917,19 @@ $lang['NEW_POLL_M_EXPLAIN'] = 'Each row corresponds to one answer (max';
$lang['OLD_BROWSER'] = 'You are using an outdated browser. The website will not display correctly.'; $lang['OLD_BROWSER'] = 'You are using an outdated browser. The website will not display correctly.';
$lang['GO_BACK'] = 'Go back'; $lang['GO_BACK'] = 'Go back';
$lang['UPLOAD_ERROR_COMMON'] = 'File upload error';
$lang['UPLOAD_ERROR_SIZE'] = 'The uploaded file exceeds the maximum size of %s';
$lang['UPLOAD_ERROR_FORMAT'] = 'Invalid file type of image';
$lang['UPLOAD_ERROR_DIMENSIONS'] = 'Image dimensions exceed the maximum allowable %sx%s px';
$lang['UPLOAD_ERROR_NOT_IMAGE'] = 'The uploaded file is not an image';
$lang['UPLOAD_ERROR_NOT_ALLOWED'] = 'Extension %s for downloads is not allowed';
$lang['UPLOAD_ERRORS'] = array(
UPLOAD_ERR_INI_SIZE => 'you have exceeded the maximum file size for the server',
UPLOAD_ERR_FORM_SIZE => 'you have exceeded the maximum file upload size',
UPLOAD_ERR_PARTIAL => 'the file was partially downloaded',
UPLOAD_ERR_NO_FILE => 'file was not uploaded',
UPLOAD_ERR_NO_TMP_DIR => 'temporary directory not found',
UPLOAD_ERR_CANT_WRITE => 'write error',
UPLOAD_ERR_EXTENSION => 'upload stopped by extension',
);

View file

@ -573,7 +573,7 @@ $lang['PUBLIC_VIEW_EMAIL'] = 'Показывать мой адрес e-mail в
$lang['EMAIL_EXPLAIN'] = 'На этот адрес вам будет отправлено письмо для завершения регистрации'; $lang['EMAIL_EXPLAIN'] = 'На этот адрес вам будет отправлено письмо для завершения регистрации';
$lang['CURRENT_PASSWORD'] = 'Текущий пароль'; $lang['CURRENT_PASSWORD'] = 'Текущий пароль';
$lang['NEW_PASSWORD'] = "Новый пароль"; $lang['NEW_PASSWORD'] = 'Новый пароль';
$lang['CONFIRM_PASSWORD'] = 'Подтвердите пароль'; $lang['CONFIRM_PASSWORD'] = 'Подтвердите пароль';
$lang['CONFIRM_PASSWORD_EXPLAIN'] = 'Вы должны указать ваш текущий пароль, если хотите изменить его или поменять свой email.'; $lang['CONFIRM_PASSWORD_EXPLAIN'] = 'Вы должны указать ваш текущий пароль, если хотите изменить его или поменять свой email.';
$lang['PASSWORD_IF_CHANGED'] = 'Указывайте пароль только если вы хотите его поменять'; $lang['PASSWORD_IF_CHANGED'] = 'Указывайте пароль только если вы хотите его поменять';
@ -585,6 +585,7 @@ $lang['RESET_AUTOLOGIN_EXPL'] = 'включая все места, где вы
$lang['AVATAR'] = 'Аватара'; $lang['AVATAR'] = 'Аватара';
$lang['AVATAR_EXPLAIN'] = 'Показывает небольшое изображение под информацией о вас в сообщениях. Может быть показано только одно изображение, шириной не более %d пикселов, высотой не более %d пикселов и объемом не более %d кб.'; $lang['AVATAR_EXPLAIN'] = 'Показывает небольшое изображение под информацией о вас в сообщениях. Может быть показано только одно изображение, шириной не более %d пикселов, высотой не более %d пикселов и объемом не более %d кб.';
$lang['AVATAR_DELETE'] = 'Удалить аватар';
$lang['UPLOAD_AVATAR_FILE'] = 'Загрузить аватару'; $lang['UPLOAD_AVATAR_FILE'] = 'Загрузить аватару';
$lang['SELECT_AVATAR'] = 'Выберите аватару'; $lang['SELECT_AVATAR'] = 'Выберите аватару';
@ -2916,3 +2917,19 @@ $lang['NEW_POLL_M_EXPLAIN'] = 'Каждая строка соответству
$lang['OLD_BROWSER'] = 'Вы используете устаревший браузер. Сайт может отображаться некорректно.'; $lang['OLD_BROWSER'] = 'Вы используете устаревший браузер. Сайт может отображаться некорректно.';
$lang['GO_BACK'] = 'Вернуться обратно'; $lang['GO_BACK'] = 'Вернуться обратно';
$lang['UPLOAD_ERROR_COMMON'] = 'Ошибка загрузки файла';
$lang['UPLOAD_ERROR_SIZE'] = 'Загруженный файл превышает максимальный размер %s';
$lang['UPLOAD_ERROR_FORMAT'] = 'Недопустимый тип файла изображения';
$lang['UPLOAD_ERROR_DIMENSIONS'] = 'Размеры изображения превышают максимально допустимые %sx%s px';
$lang['UPLOAD_ERROR_NOT_IMAGE'] = 'Загруженный файл не является изображением';
$lang['UPLOAD_ERROR_NOT_ALLOWED'] = 'Расширение %s для загружаемых файлов не разрешено';
$lang['UPLOAD_ERRORS'] = array(
UPLOAD_ERR_INI_SIZE => 'превышен максимальный размер файлов для сервера',
UPLOAD_ERR_FORM_SIZE => 'превышен максимальный размер загружаемого файла',
UPLOAD_ERR_PARTIAL => 'файл был загружен частично',
UPLOAD_ERR_NO_FILE => 'файл не был загружен',
UPLOAD_ERR_NO_TMP_DIR => 'временная директория не найдена',
UPLOAD_ERR_CANT_WRITE => 'ошибка записи',
UPLOAD_ERR_EXTENSION => 'загрузка остановлена из-за расширения',
);

View file

@ -573,7 +573,7 @@ $lang['PUBLIC_VIEW_EMAIL'] = 'Показувати мою адресу e-mail в
$lang['EMAIL_EXPLAIN'] = 'На цю адресу вам буде відіслано лист для завершення реєстрації'; $lang['EMAIL_EXPLAIN'] = 'На цю адресу вам буде відіслано лист для завершення реєстрації';
$lang['CURRENT_PASSWORD'] = 'Поточний пароль'; $lang['CURRENT_PASSWORD'] = 'Поточний пароль';
$lang['NEW_PASSWORD'] = "Новий пароль"; $lang['NEW_PASSWORD'] = 'Новий пароль';
$lang['CONFIRM_PASSWORD'] = 'Підтвердіть пароль'; $lang['CONFIRM_PASSWORD'] = 'Підтвердіть пароль';
$lang['CONFIRM_PASSWORD_EXPLAIN'] = 'Ви повинні вказати ваш поточний пароль, якщо хочете змінити його або змінити свій email.'; $lang['CONFIRM_PASSWORD_EXPLAIN'] = 'Ви повинні вказати ваш поточний пароль, якщо хочете змінити його або змінити свій email.';
$lang['PASSWORD_IF_CHANGED'] = 'Вказуйте свій пароль, якщо ви хочете його змінити'; $lang['PASSWORD_IF_CHANGED'] = 'Вказуйте свій пароль, якщо ви хочете його змінити';
@ -585,7 +585,8 @@ $lang['RESET_AUTOLOGIN_EXPL'] = 'включаючи всі місця, де ви
$lang['AVATAR'] = 'Аватар'; $lang['AVATAR'] = 'Аватар';
$lang['AVATAR_EXPLAIN'] = "Показує невелике зображення під інформацією про вас в повідомленнях. Може бути показано тільки одне зображення, шириною не більше %d пікселів, висотою не більше %d пікселів і об'ємом не більше %d кб."; $lang['AVATAR_EXPLAIN'] = "Показує невелике зображення під інформацією про вас в повідомленнях. Може бути показано тільки одне зображення, шириною не більше %d пікселів, висотою не більше %d пікселів і об'ємом не більше %d кб.";
$lang['UPLOAD_AVATAR_FILE'] = "Завантажити аватару"; $lang['AVATAR_DELETE'] = 'Видалити аватар';
$lang['UPLOAD_AVATAR_FILE'] = 'Завантажити аватару';
$lang['SELECT_AVATAR'] = 'Виберіть аватару'; $lang['SELECT_AVATAR'] = 'Виберіть аватару';
$lang['RETURN_PROFILE'] = 'Повернутися до профілю'; $lang['RETURN_PROFILE'] = 'Повернутися до профілю';
@ -2916,3 +2917,19 @@ $lang['NEW_POLL_M_EXPLAIN'] = 'Кожен рядок відповідає одн
$lang['OLD_BROWSER'] = 'Ви використовуєте застарілий браузер. Сайт може відображатися некоректно.'; $lang['OLD_BROWSER'] = 'Ви використовуєте застарілий браузер. Сайт може відображатися некоректно.';
$lang['GO_BACK'] = 'Повернутися назад'; $lang['GO_BACK'] = 'Повернутися назад';
$lang['UPLOAD_ERROR_COMMON'] = 'Помилка завантаження файлу';
$lang['UPLOAD_ERROR_SIZE'] = 'Завантажений файл перевищує максимальний розмір %s';
$lang['UPLOAD_ERROR_FORMAT'] = 'Некоректний тип файлу зображення';
$lang['UPLOAD_ERROR_DIMENSIONS'] = 'Розміри зображення перевищують максимально допустимі %sx%s px';
$lang['UPLOAD_ERROR_NOT_IMAGE'] = 'Завантажений файл не є зображенням';
$lang['UPLOAD_ERROR_NOT_ALLOWED'] = 'Розширення %s для файлів, що завантажуються не дозволено';
$lang['UPLOAD_ERRORS'] = array(
UPLOAD_ERR_INI_SIZE => 'перевищено максимальний розмір файлів для сервера',
UPLOAD_ERR_FORM_SIZE => 'перевищено максимальний розмір завантажуваного файлу',
UPLOAD_ERR_PARTIAL => 'файл був завантажений частково',
UPLOAD_ERR_NO_FILE => 'файл не був завантажений',
UPLOAD_ERR_NO_TMP_DIR => 'тимчасова директорія не знайдено',
UPLOAD_ERR_CANT_WRITE => 'помилка запису',
UPLOAD_ERR_EXTENSION => 'завантаження зупинено через розширення',
);

View file

@ -281,7 +281,7 @@ ajax.callback.posts = function(data){
<td> <td>
Изображение под вашим именем в сообщениях<br /> Изображение под вашим именем в сообщениях<br />
Максимальные ШИРИНАхВЫСОТА {$bb_cfg['avatars']['max_width']}x{$bb_cfg['avatars']['max_height']} пикселов<br /> Максимальные ШИРИНАхВЫСОТА {$bb_cfg['avatars']['max_width']}x{$bb_cfg['avatars']['max_height']} пикселов<br />
Максимальный объём {AVATARS_MAX_SIZE}<br /> Максимальный объем {AVATARS_MAX_SIZE}<br />
<!-- IF $bb_cfg['avatars']['up_allowed'] --> <!-- IF $bb_cfg['avatars']['up_allowed'] -->
<div class="spacer_4"></div> <div class="spacer_4"></div>

View file

@ -207,7 +207,7 @@ ajax.callback.gen_passkey = function(data){
<div id="avatar-img" class="mrg_4 med"> <div id="avatar-img" class="mrg_4 med">
{AVATAR_IMG} {AVATAR_IMG}
<!-- IF IS_ADMIN || PROFILE_USER --> <!-- IF IS_ADMIN || PROFILE_USER -->
<p id="avatar-adm" class="med mrg_4">[ <a href="#" onclick="if (window.confirm('Удалить аватар?')){ ajax.avatar('delete', {PROFILE_USER_ID}); } return false;" class="adm">Удалить аватар</a> ]</p> <p id="avatar-adm" class="med mrg_4">[ <a href="#" onclick="if (window.confirm('{L_AVATAR_DELETE}?')){ ajax.avatar('delete', {PROFILE_USER_ID}); } return false;" class="adm">{L_AVATAR_DELETE}</a> ]</p>
<!-- ENDIF --> <!-- ENDIF -->
</div> </div>
<p class="small mrg_4"> <p class="small mrg_4">