mirror of
https://github.com/myvesta/vesta
synced 2025-08-14 10:37:42 -07:00
Translation begins...
This commit is contained in:
parent
8b74eb9179
commit
43d7825b68
39 changed files with 4188 additions and 4079 deletions
15
web/inc/i18n/en.php
Normal file
15
web/inc/i18n/en.php
Normal file
|
@ -0,0 +1,15 @@
|
|||
<?php
|
||||
|
||||
/**
|
||||
* Vesta CP language file
|
||||
* Translated by ZonD80 (zond80@gmail.com)
|
||||
*/
|
||||
|
||||
if (!defined('LANGUAGE')) die('Direct access not allowed');
|
||||
|
||||
$LANG = array(
|
||||
'Hour'=>'Hour',
|
||||
'Min'=>'Min',
|
||||
'pb'=>'pb',
|
||||
|
||||
);
|
82
web/inc/i18n/ru.php
Normal file
82
web/inc/i18n/ru.php
Normal file
|
@ -0,0 +1,82 @@
|
|||
<?php
|
||||
/**
|
||||
* Vesta CP language file
|
||||
* Translated by ZonD80 (zond80@gmail.com)
|
||||
*/
|
||||
|
||||
if (!defined('LANGUAGE')) die('Direct access not allowed');
|
||||
|
||||
$LANG = array(
|
||||
'Hour'=>'Час',
|
||||
'Min'=>'Мин',
|
||||
'pb'=>'пб',
|
||||
'tb'=>'тб',
|
||||
'gb'=>'гб',
|
||||
'mb'=>'мб',
|
||||
'Error'=>'Ошибка',
|
||||
'minute'=>'минута',
|
||||
'hour'=>'час',
|
||||
'day'=>'день',
|
||||
'month'=>'месяц',
|
||||
'day of week'=>'день недели',
|
||||
'cmd'=>'командная строка',
|
||||
'Error: field "%s" can not be blank.'=>'Ошибка: Поле "%s" не может быть пустым.',
|
||||
_('Error: vesta did not return any output.')=>'Ошибка: Vesta не отвечает',
|
||||
'OK: cron job has been created successfully.'=>'Успех: Задание Cron успешно создано',
|
||||
'database'=>'база данных',
|
||||
'username'=>'имя пользователя',
|
||||
'password'=>'пароль',
|
||||
'type'=>'тип',
|
||||
'charset'=>'кодировка',
|
||||
'DATABASE_CREATED_OK'=>'Успех: База данных <a href="/edit/db/?database=%s"><b>%s</b></a> успешно создана.',
|
||||
'domain'=>'домен',
|
||||
'ip'=>'IP',
|
||||
'DOMAIN_CREATED_OK'=>'Успех: Домен <a href="/list/dns/?domain=%s"><b>%s</b></a> успешно создан.',
|
||||
'RECORD_CREATED_OK'=>'Успех: Запись <b>%s.%s</b> успешно создана.',
|
||||
'ip address'=>'IP-адрес',
|
||||
'netmask'=>'маска подсети',
|
||||
'interface'=>'интерфейс',
|
||||
'assigned user'=>'назначенный пользователь',
|
||||
'IP_CREATED_OK'=>'"Успех: ip-адрес <a href="/edit/ip/?ip=%s"><b>%s</b></a> успешно создан.',
|
||||
'DOMAIN_MAIL_CREATED_OK'=>'Успех: почта для домена <a href="/list/mail/?domain=%s"><b>%s</b></a> подключена успешно',
|
||||
'account'=>'аккаунт',
|
||||
'password'=>'пароль',
|
||||
'MAIL_ACCOUNT_CREATED_OK'=>'Успех: почтовый аккаунт <a href="/edit/mail/?account=%s&domain=%s"><b>%s@%s</b></a> успешно создан.',
|
||||
'package'=>'пакет',
|
||||
'template'=>'шаблон',
|
||||
'shell'=>'SSH',
|
||||
'web domains'=>'хосты',
|
||||
'web aliases'=>'перенаправления хостов',
|
||||
'dns records'=>'DNS записи',
|
||||
'mail domains'=>'домены с почтой',
|
||||
'mail accounts'=>'почтовые аккаунты',
|
||||
'databases'=>'базы данных',
|
||||
'cron jobs'=>'cron задания',
|
||||
'backups'=>'бэкапы',
|
||||
'quota'=>'квота диска',
|
||||
'bandwidth'=>'ширина канала',
|
||||
'ns1'=>'DNS-сервер #1',
|
||||
'ns2'=>'DNS-сервер #2',
|
||||
'PACKAGE_CREATED_OK'=>'Успех: Пакет <a href="/edit/package/?package=%s"><b>%s</b></a> успешно создан.',
|
||||
'user'=>'пользователь',
|
||||
'email'=>'Email',
|
||||
'first name'=>'Имя',
|
||||
'last name'=>'Фамилия',
|
||||
'Please enter valid email address.'=>'Пожалуйста, введите реальный email адрес.',
|
||||
'Welcome to Vesta Control Panel'=>'Добро пожаловать в панель управления Vesta',
|
||||
'MAIL_FROM'=>'Vesta Control Panel <noreply@%s>',
|
||||
'GREETINGS_GORDON_FREEMAN'=>"Здравствуйте, %s %s,\n",
|
||||
'GREETINGS'=>"Здравствуйте,\n",
|
||||
'ACCOUNT_READY'=>"Ваш аккаунт успешно создан и готов к использованию.\n\nhttps://%s/login/\nИмя пользователя: %s\nПароль: %s\n\n--\nПанель управления Vesta\n",
|
||||
'ACCOUNT_CREATED_OK'=>'Успех: Пользователь <a href="/edit/user/?user=%s"><b>%s</b></a> успешно создан.',
|
||||
'ssl certificate'=>'SSL сертификат',
|
||||
'ssl key'=>'ключ SSL сертификата',
|
||||
'stats user password'=>'пароль для доступа к статистике',
|
||||
'ftp user password'=>'пароль для доступа к FTP',
|
||||
'FTP login credentials'=>'Данные для доступа к FTP',
|
||||
'FTP_ACCOUNT_READY'=>"Ваш FTP аккаунт успешно создан и готов к использованию.\n\nХост: %s\nИмя пользователя: %s_%s\nПароль: %s\n\n--\nПанель управления Vesta\n",
|
||||
'HOSTING_DOMAIN_CREATED_OK'=>'Успешно: хостинг для домена <a href="/edit/web/?domain=%s"><b>%s</b></a> был успешно создан.',
|
||||
|
||||
|
||||
|
||||
);
|
297
web/inc/main.php
297
web/inc/main.php
|
@ -1,138 +1,159 @@
|
|||
<?php
|
||||
// Check user session
|
||||
if (!isset($_SESSION['user'])) {
|
||||
$_SESSION['request_uri'] = $_SERVER['REQUEST_URI'];
|
||||
header("Location: /login/");
|
||||
exit;
|
||||
}
|
||||
|
||||
if (isset($_SESSION['look']) && ( $_SESSION['look'] != 'admin' )) {
|
||||
$user = $_SESSION['look'];
|
||||
} else {
|
||||
$user = $_SESSION['user'];
|
||||
}
|
||||
|
||||
define('VESTA_CMD', '/usr/bin/sudo /usr/local/vesta/bin/');
|
||||
|
||||
$i = 0;
|
||||
|
||||
// Define functions
|
||||
function check_error($return_var){
|
||||
if ( $return_var > 0 ) {
|
||||
header("Location: /error/");
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
function top_panel($user, $TAB) {
|
||||
global $panel;
|
||||
$command = VESTA_CMD."v-list-user '".$user."' 'json'";
|
||||
exec ($command, $output, $return_var);
|
||||
if ( $return_var > 0 ) {
|
||||
header("Location: /error/");
|
||||
exit;
|
||||
}
|
||||
$panel = json_decode(implode('', $output), true);
|
||||
unset($output);
|
||||
if ( $user == 'admin' ) {
|
||||
include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/panel.html');
|
||||
} else {
|
||||
include($_SERVER['DOCUMENT_ROOT'].'/templates/user/panel.html');
|
||||
}
|
||||
}
|
||||
|
||||
function humanize_time($usage) {
|
||||
if ( $usage > 60 ) {
|
||||
$usage = $usage / 60;
|
||||
$usage = number_format($usage, 2);
|
||||
$usage = $usage." Hour.";
|
||||
} else {
|
||||
$usage = $usage." Min.";
|
||||
}
|
||||
return $usage;
|
||||
}
|
||||
|
||||
function humanize_usage($usage) {
|
||||
if ( $usage > 1000 ) {
|
||||
$usage = $usage / 1000;
|
||||
if ( $usage > 1000 ) {
|
||||
$usage = $usage / 1000 ;
|
||||
if ( $usage > 1000 ) {
|
||||
$usage = $usage / 1000 ;
|
||||
$usage = number_format($usage, 2);
|
||||
$usage = $usage." pb";
|
||||
} else {
|
||||
$usage = number_format($usage, 2);
|
||||
$usage = $usage." tb";
|
||||
}
|
||||
} else {
|
||||
$usage = number_format($usage, 2);
|
||||
$usage = $usage." gb";
|
||||
}
|
||||
} else {
|
||||
$usage = $usage." mb";
|
||||
}
|
||||
return $usage;
|
||||
}
|
||||
|
||||
function get_percentage($used,$total) {
|
||||
if (!isset($total)) $total = 0;
|
||||
if (!isset($used)) $used = 0;
|
||||
if ( $total == 0 ) {
|
||||
$percent = 0;
|
||||
} else {
|
||||
$percent = $used / $total;
|
||||
$percent = $percent * 100;
|
||||
$percent = number_format($percent, 0, '', '');
|
||||
if ( $percent > 100 ) {
|
||||
$percent = 100;
|
||||
}
|
||||
if ( $percent < 0 ) {
|
||||
$percent = 0;
|
||||
}
|
||||
|
||||
}
|
||||
return $percent;
|
||||
}
|
||||
|
||||
function send_email($to,$subject,$mailtext,$from) {
|
||||
$charset = "utf-8";
|
||||
$to = '<'.$to.'>';
|
||||
$boundary = '--' . md5( uniqid("myboundary") );
|
||||
$priorities = array( '1 (Highest)', '2 (High)', '3 (Normal)', '4 (Low)', '5 (Lowest)' );
|
||||
$priority = $priorities[2];
|
||||
$ctencoding = "8bit";
|
||||
$sep = chr(13) . chr(10);
|
||||
$disposition = "inline";
|
||||
$subject = "=?$charset?B?".base64_encode($subject)."?=";
|
||||
$header = "From: $from \nX-Priority: $priority\nCC:\n";
|
||||
$header .= "Mime-Version: 1.0\nContent-Type: text/plain; charset=$charset \n";
|
||||
$header .= "Content-Transfer-Encoding: $ctencoding\nX-Mailer: Php/libMailv1.3\n";
|
||||
$message = $mailtext;
|
||||
mail($to, $subject, $message, $header);
|
||||
}
|
||||
|
||||
function display_error_block() {
|
||||
if (!empty($_SESSION['error_msg'])) {
|
||||
echo '
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
$( "#dialog:ui-dialog" ).dialog( "destroy" );
|
||||
$( "#dialog-message" ).dialog({
|
||||
modal: true,
|
||||
buttons: {
|
||||
Ok: function() {
|
||||
$( this ).dialog( "close" );
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<div id="dialog-message" title="Error">
|
||||
<p>';
|
||||
echo $_SESSION['error_msg'];
|
||||
echo "</p>\n </div>\n";
|
||||
unset($_SESSION['error_msg']);
|
||||
}
|
||||
}
|
||||
?>
|
||||
<?php
|
||||
|
||||
// need to be moved to user settings
|
||||
define('LANGUAGE','ru');
|
||||
|
||||
require_once($_SERVER['DOCUMENT_ROOT'].'/inc/i18n/'.LANGUAGE.'.php');
|
||||
|
||||
|
||||
// works like sprintf if more than one arguments called
|
||||
function _() {
|
||||
global $LANG;
|
||||
$args = func_get_args();
|
||||
$key = $args[0];
|
||||
if (!isset($LANG[$key])) $text=$key; else
|
||||
$text=$LANG[$key];
|
||||
|
||||
if (count($args)>1) { $args[0] = $text;
|
||||
return call_user_func_array("sprintf",$args);
|
||||
}
|
||||
else return $text;
|
||||
}
|
||||
|
||||
// Check user session
|
||||
if (!isset($_SESSION['user'])) {
|
||||
$_SESSION['request_uri'] = $_SERVER['REQUEST_URI'];
|
||||
header("Location: /login/");
|
||||
exit;
|
||||
}
|
||||
|
||||
if (isset($_SESSION['look']) && ( $_SESSION['look'] != 'admin' )) {
|
||||
$user = $_SESSION['look'];
|
||||
} else {
|
||||
$user = $_SESSION['user'];
|
||||
}
|
||||
|
||||
define('VESTA_CMD', '/usr/bin/sudo /usr/local/vesta/bin/');
|
||||
|
||||
$i = 0;
|
||||
|
||||
// Define functions
|
||||
function check_error($return_var){
|
||||
if ( $return_var > 0 ) {
|
||||
header("Location: /error/");
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
function top_panel($user, $TAB) {
|
||||
global $panel;
|
||||
$command = VESTA_CMD."v-list-user '".$user."' 'json'";
|
||||
exec ($command, $output, $return_var);
|
||||
if ( $return_var > 0 ) {
|
||||
header("Location: /error/");
|
||||
exit;
|
||||
}
|
||||
$panel = json_decode(implode('', $output), true);
|
||||
unset($output);
|
||||
if ( $user == 'admin' ) {
|
||||
include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/panel.html');
|
||||
} else {
|
||||
include($_SERVER['DOCUMENT_ROOT'].'/templates/user/panel.html');
|
||||
}
|
||||
}
|
||||
|
||||
function humanize_time($usage) {
|
||||
if ( $usage > 60 ) {
|
||||
$usage = $usage / 60;
|
||||
$usage = number_format($usage, 2);
|
||||
$usage = $usage." "._('Hour').".";
|
||||
} else {
|
||||
$usage = $usage." "._('Min').".";
|
||||
}
|
||||
return $usage;
|
||||
}
|
||||
|
||||
function humanize_usage($usage) {
|
||||
if ( $usage > 1000 ) {
|
||||
$usage = $usage / 1000;
|
||||
if ( $usage > 1000 ) {
|
||||
$usage = $usage / 1000 ;
|
||||
if ( $usage > 1000 ) {
|
||||
$usage = $usage / 1000 ;
|
||||
$usage = number_format($usage, 2);
|
||||
$usage = $usage." "._('pb');
|
||||
} else {
|
||||
$usage = number_format($usage, 2);
|
||||
$usage = $usage." "._('tb');
|
||||
}
|
||||
} else {
|
||||
$usage = number_format($usage, 2);
|
||||
$usage = $usage." "._('gb');
|
||||
}
|
||||
} else {
|
||||
$usage = $usage." "._('mb');
|
||||
}
|
||||
return $usage;
|
||||
}
|
||||
|
||||
function get_percentage($used,$total) {
|
||||
if (!isset($total)) $total = 0;
|
||||
if (!isset($used)) $used = 0;
|
||||
if ( $total == 0 ) {
|
||||
$percent = 0;
|
||||
} else {
|
||||
$percent = $used / $total;
|
||||
$percent = $percent * 100;
|
||||
$percent = number_format($percent, 0, '', '');
|
||||
if ( $percent > 100 ) {
|
||||
$percent = 100;
|
||||
}
|
||||
if ( $percent < 0 ) {
|
||||
$percent = 0;
|
||||
}
|
||||
|
||||
}
|
||||
return $percent;
|
||||
}
|
||||
|
||||
function send_email($to,$subject,$mailtext,$from) {
|
||||
$charset = "utf-8";
|
||||
$to = '<'.$to.'>';
|
||||
$boundary = '--' . md5( uniqid("myboundary") );
|
||||
$priorities = array( '1 (Highest)', '2 (High)', '3 (Normal)', '4 (Low)', '5 (Lowest)' );
|
||||
$priority = $priorities[2];
|
||||
$ctencoding = "8bit";
|
||||
$sep = chr(13) . chr(10);
|
||||
$disposition = "inline";
|
||||
$subject = "=?$charset?B?".base64_encode($subject)."?=";
|
||||
$header = "From: $from \nX-Priority: $priority\nCC:\n";
|
||||
$header .= "Mime-Version: 1.0\nContent-Type: text/plain; charset=$charset \n";
|
||||
$header .= "Content-Transfer-Encoding: $ctencoding\nX-Mailer: Php/libMailv1.3\n";
|
||||
$message = $mailtext;
|
||||
mail($to, $subject, $message, $header);
|
||||
}
|
||||
|
||||
function display_error_block() {
|
||||
if (!empty($_SESSION['error_msg'])) {
|
||||
echo '
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
$( "#dialog:ui-dialog" ).dialog( "destroy" );
|
||||
$( "#dialog-message" ).dialog({
|
||||
modal: true,
|
||||
buttons: {
|
||||
Ok: function() {
|
||||
$( this ).dialog( "close" );
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<div id="dialog-message" title="'._('Error').'">
|
||||
<p>';
|
||||
echo $_SESSION['error_msg'];
|
||||
echo "</p>\n </div>\n";
|
||||
unset($_SESSION['error_msg']);
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue