diff --git a/.gitignore b/.gitignore index 85d04c84..307ba888 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,7 @@ public/media/*.size composer.lock php/sentry.php php/vendor +_translate.cache +media_import +__pycache__ +vendor diff --git a/php/clonos.php b/php/clonos.php index ff565ed4..3bfc5149 100644 --- a/php/clonos.php +++ b/php/clonos.php @@ -7,12 +7,16 @@ require_once('forms.php'); require_once('utils.php'); class ClonOS { + const TRANSLATE_CACHE_NAME='_translate.cache'; + const BACK_FOLDER_NAME='back'; + public $server_name=''; public $workdir=''; public $environment=''; public $realpath=''; public $realpath_php=''; public $realpath_public=''; + public $realpath_dialogs=''; public $realpath_page=''; public $uri_chunks=array(); public $json_name=''; @@ -65,6 +69,7 @@ class ClonOS { $this->realpath=$_real_path.'/'; # /usr/home/web/cp/clonos/ $this->realpath_php=$_real_path.'/php/'; # /usr/home/web/cp/clonos/php/ $this->realpath_public=$_real_path.'/public/'; # /usr/home/web/cp/clonos/public/ + $this->realpath_dialogs=$this->realpath_public.'dialogs/'; # /usr/home/web/cp/clonos/public/dialogs/ $this->media_import=$_real_path.'/media_import/'; if($this->environment=='development'){ @@ -104,7 +109,7 @@ class ClonOS { $this->json_name=$this->realpath_page.'a.json.php'; //echo $this->realpath_page; }else if($_SERVER['REQUEST_URI']){ - + /* if($this->uri_chunks[0]=='overview1') { $this->uri_chunks[0]='overview'; @@ -120,7 +125,7 @@ class ClonOS { echo 'incfile: ',$incfile;exit; //break 1; } - + */ //$this->realpath_page=$this->realpath_public.'pages/'.trim($_SERVER['REQUEST_URI'],'/').'/'; if(isset($this->uri_chunks[0])){ $this->realpath_page=$this->realpath_public.'pages/'.$this->uri_chunks[0].'/'; @@ -283,6 +288,94 @@ class ClonOS { { return $this->_locale->translate($phrase); } + + function ccmd_trltGo() + { + $dbres=[]; + $form=$this->_vars['form_data']; + if(isset($form['phraseID']) && is_numeric($form['phraseID'])) + { + $db=new Db('clonos'); + if(!$db->isConnected()) + return array('error'=>true,'error_message'=>'translate db connection lost!'); + + $dbres=$db->selectOne( + 'SELECT e.text as eng, o.text as oth FROM "lang_en" as e left join "lang_other" as o on e.id=o.en_id where e.id=?', + [[$form['phraseID'],PDO::PARAM_INT]] + ); + + $dbres['phraseID']=$form['phraseID']; + $dbres['type']=$form['type']; + $dbres['dialog']=$form['dialog']; + } + return $dbres; + + } + function ccmd_trltUpdate() + { + $lang=$this->_locale->get_lang(); + $form=$this->_vars['form_data']; + + switch($form['type']) + { + case 'dialog': + $cache_file_name=$this->realpath_dialogs.ClonOS::TRANSLATE_CACHE_NAME. + DIRECTORY_SEPARATOR.$lang.'.'.$form['dialog'].'.php'; + break; + case 'pages': + $cache_file_name=$this->realpath_page.ClonOS::TRANSLATE_CACHE_NAME. + DIRECTORY_SEPARATOR.$lang.'.index.php'; + break; + default: + echo $cache_file_name; + exit; + break; + } + + if(file_exists($cache_file_name)) unlink($cache_file_name); + //echo $cache_file_name; + //exit; + //echo $file_name;exit; + $db=new Db('clonos'); + if(!$db->isConnected()) + return array('error'=>true,'error_message'=>'translate db connection error!'); + + $dbres=$db->update("update lang_other set text=?,lang=? where en_id=?",[ + [$form['translText'],PDO::PARAM_STR], + [$lang,PDO::PARAM_STR], + [$form['phraseID'],PDO::PARAM_INT] + ]); + + //echo '
';print_r($dbres);
+		
+		if(!isset($dbres['error']))
+		{
+			if($dbres['rowCount']==0)
+			{
+				$dbres=$db->insert("insert into lang_other (en_id,text,lang) values (?,?,?)",[
+					[$form['phraseID'],PDO::PARAM_INT],
+					[$form['translText'],PDO::PARAM_STR],
+					[$lang,PDO::PARAM_STR]
+				]);
+				//print_r($dbres);exit;
+				if($dbres['error'])
+				{
+					return $dbres;
+				}
+				$dbres['phraseID']=$dbres['lastID'];
+			}
+		}
+		
+		
+		//$back_file=
+		
+		return [
+			'error'=>false,
+			'rowCount'=>$dbres['rowCount'],
+			'phraseID'=>$form['phraseID'],
+			'phrase'=>$form['translText']
+		];
+	}
 
 	function ccmd_getJsonPage(){
 		$included_result_array=false;
@@ -2093,7 +2186,10 @@ class ClonOS {
 	function placeDialogByName($dialog_name=null){
 		if(is_null($dialog_name)) return;
 		echo PHP_EOL;
-		$file_name=$this->realpath_public.'dialogs/'.$dialog_name.'.php';
+		//$file_name=$this->realpath_public.'dialogs/'.$dialog_name.'.php';
+		
+		$trres=$this->_translate->translate('dialogs','dialogs/',$dialog_name.'.php');
+		$file_name=$this->_translate->get_translated_filename();
 		if(file_exists($file_name)){
 			include($file_name);
 			echo PHP_EOL,PHP_EOL;
diff --git a/php/config.php b/php/config.php
index 69a2dc59..14674e6a 100644
--- a/php/config.php
+++ b/php/config.php
@@ -387,7 +387,7 @@ class Config
 			$res1=$cpu+$ram1;
 			if($min>$res1 || $min==0) {$min=$res1;$min_id=$item['id'];}
 
-			$name=''.$item['name'].' (cpu: '.$cpu.'; ram: '.$ram.'; hdd: '.$item['pkg_vm_disk'].')';
+			$name=$item['name'].' (cpu: '.$cpu.'; ram: '.$ram.'; hdd: '.$item['pkg_vm_disk'].')';	# ''.	
 			$html.='					'.PHP_EOL;
 		}
 		return array('html'=>$html,'min_id'=>$min_id);
diff --git a/php/localization.php b/php/localization.php
index 677750a8..b2724d2c 100644
--- a/php/localization.php
+++ b/php/localization.php
@@ -8,11 +8,60 @@ class Localization
 
 	function __construct($realpath_public)
 	{
+#$_COOKIE['lang']='ru';
 		$this->realpath=$realpath_public;
 		(isset($_COOKIE['lang'])) AND $this->language=$_COOKIE['lang'];
 		(!array_key_exists($this->language, Config::$languages)) AND $this->language='en';
 		include($realpath_public.'/lang/'.$this->language.'.php');
 		$this->translate_arr=$lang;
+		
+		/*
+		$n=1;
+		foreach($lang as $eng=>$rus)
+		{
+			echo $n,' — ',$eng,"
"; + $n++; + } + exit; + */ + + # Если нужно наполнить базу, то нужно убрать комментарий и запустить страницу + # с параметром /?go=go + /* + if($_GET['go']=='go') + { + #var_dump($lang); + #exit; + + $db=new Db('clonos'); + if(!$db->isConnected()) + { + print_r(['error'=>true,'error_message'=>'db connection lost!']); + exit; + } + + foreach($lang as $eng=>$rus) + { + $dbres=$db->insert("insert into lang_en (text) values (?)",[[$eng, PDO::PARAM_STR]]); + if($dbres['error']) + { + print_r(['error'=>true,'error_message'=>$dbres['info']]); + exit; + } + + $new_id=$dbres['lastID']; + $dbres=$db->insert("insert into lang_other (en_id,text,lang) values (?,?,?)",[[$new_id],[$rus],['ru']]); + if($dbres['error']) + { + print_r(['error'=>true,'error_message'=>$dbres['info']]); + exit; + } + + } + } + echo 'all ok'; + exit; + */ } public function get_lang() @@ -32,7 +81,9 @@ class Localization } - +# для отключения ссылок в меню, чтобы можно было его перевести: +# $('ul.menu').on('click',function(event){return false;}); +# доделать со временем class Translate { private $locale=''; @@ -57,20 +108,28 @@ class Translate public function translate($path,$page,$file_name) { $translate_cache='_translate.cache'; + $backup_dir='back'; switch($path) { case 'pages': $full_path=$this->realpath.$path.DIRECTORY_SEPARATOR.$page.DIRECTORY_SEPARATOR; $translate_cache_path=$full_path.$translate_cache.DIRECTORY_SEPARATOR; + $backup_path=$full_path.$backup_dir.DIRECTORY_SEPARATOR; $this->translated_file=$translate_cache_path.$this->language.'.index.php'; + //echo $this->translated_file;exit; break; case 'dialogs': $full_path=$this->realpath.$path.DIRECTORY_SEPARATOR; $translate_cache_path=$full_path.$translate_cache.DIRECTORY_SEPARATOR; + $backup_path=$full_path.$backup_dir.DIRECTORY_SEPARATOR; $this->translated_file=$translate_cache_path.$this->language.'.'.$file_name; break; + default: + $path='system'; } + if(!is_dir($full_path)) return; + if(!is_dir($translate_cache_path)) { mkdir($translate_cache_path); @@ -82,8 +141,10 @@ class Translate $file=$full_path.$file_name; + $mtime_translate=0; $mtime_orig=filemtime($file); - $mtime_translate=filemtime($this->translated_file); + if(file_exists($this->translated_file)) + $mtime_translate=filemtime($this->translated_file); # $mtime_db_update — дата последней модификации перевода в БД if($mtime_orig<$mtime_translate) @@ -101,8 +162,8 @@ class Translate { $is_changed=false; $txt=file_get_contents($file); - preg_match_all('#]*)>(.*)#',$txt,$res,PREG_SET_ORDER); -// var_dump($res);exit; + preg_match_all('#]*)>(.*)#U',$txt,$res,PREG_SET_ORDER); + //echo '
';var_dump($res);exit;
 			
 			$ids_arr=[];
 			
@@ -120,6 +181,7 @@ class Translate
 				{
 					// если у тэга есть ID, то проверяем текст и формируем шаблон
 					preg_match_all('#((id)="?([\d]+)"?|update)#',$attrs,$params,PREG_SET_ORDER);
+
 					if(is_array($params))	// && $this->language!='en'
 					{
 						// ИЗМЕНИТЬ КОММЕНТАРИЙ! --- если у пользователя язык интерфейса не английский, то переводим
@@ -131,13 +193,20 @@ class Translate
 								if(is_numeric($p[3]))
 								{
 									$id=$p[3];
-									$dbres=$db->selectOne("select text from lang_en where id=?",[[$id,PDO::PARAM_INT]]);
+									$dbres=$db->selectOne("select text from lang_en where id=? and type in (?,?)",[
+										[$id,PDO::PARAM_INT],
+										[$path,PDO::PARAM_STR],
+										['system',PDO::PARAM_STR]
+									]);
+									//var_dump($dbres);
 									if(!empty($dbres))
 									{
 										if($text!=$dbres['text'])
 										{
 											// если оригинальный текст изменился, то обновляем его в базе
-											$dbres1=$db->update('update lang_en set text=? where id=?',[[$text,PDO::PARAM_STR],[$id,PDO::PARAM_INT]]);
+											# временно отключил, пока наполняется основная база. Потом нужно вернуть обратно
+											/*
+											$dbres1=$db->update('update lang_en set text=? where id=? and type=?',[[$text,PDO::PARAM_STR],[$id,PDO::PARAM_INT],[$path,PDO::PARAM_STR]]);
 											if(isset($dbres1['rowCount']))
 											{
 												if($dbres1['rowCount']>0)
@@ -145,11 +214,14 @@ class Translate
 													$is_changed=true;
 												}
 											}
+											*/
 										}
+										
 									}
 									$ids_arr[]=$id;
 								}
 							}
+							//print_r($ids_arr);exit;
 /*							
 							if($p[0]=='update' && $id>0)
 							{
@@ -170,13 +242,20 @@ delete FROM "lang_en";
 VACUUM;
 UPDATE SQLITE_SEQUENCE SET seq = 0 WHERE name = 'lang_en'
 */
-					
-					$dbres=$db->selectOne("select id from lang_en where text=?",[[$text, PDO::PARAM_STR]]);	//,[[$text, PDO::PARAM_STR]]);
+					$dbres=$db->selectOne("select id from lang_en where text=? and type in (?,?)",[
+						[$text,PDO::PARAM_STR],
+						[$path,PDO::PARAM_STR],
+						['system',PDO::PARAM_STR]
+					]);
 					if(isset($dbres['error']) && $dbres['error'])
 					{
 						echo 'error db: ',$dbres['info'];
 						exit;
 					}
+					//echo $text;
+					//var_dump($dbres);
+					//echo '
'; + if(is_numeric($dbres['id'])) { // если фраза есть в базе, то вписываем её ID в тэг @@ -187,7 +266,7 @@ UPDATE SQLITE_SEQUENCE SET seq = 0 WHERE name = 'lang_en' if($dbres===false) { // если фразы нет в базе, то добавляем её туда и вписываем новый ID в тэг - $dbres=$db->insert("insert into lang_en (text) values (?)",[[$text, PDO::PARAM_STR]]); + $dbres=$db->insert("insert into lang_en (text,type) values (?,?)",[[$text, PDO::PARAM_STR],[$path, PDO::PARAM_STR]]); if($dbres['error']) return array('error'=>true,'error_message'=>$dbres['info']); @@ -195,18 +274,29 @@ UPDATE SQLITE_SEQUENCE SET seq = 0 WHERE name = 'lang_en' $new_text=''.$text.""; $txt=str_replace($tag,$new_text,$txt); $is_changed=true; - + //echo $txt; $ids_arr[]=$dbres['lastID']; } } + } } // бэкапим предыдущий файл и сохраняем видоизменённый if($is_changed) { - rename($full_path.$file_name,$full_path.'_back.'.time().'.'.$file_name); + if(!is_dir($backup_path)) + { + mkdir($backup_path); + } + + //rename($full_path.$file_name,$full_path. + // $backup_dir.DIRECTORY_SEPARATOR.time().'.'.$file_name); + rename($full_path.$file_name,$backup_path.time().'.'.$file_name); file_put_contents($full_path.$file_name,$txt); + #echo 'save'; + #echo $txt; + #exit; } // переводим на другие языки @@ -222,14 +312,28 @@ UPDATE SQLITE_SEQUENCE SET seq = 0 WHERE name = 'lang_en' foreach($res as $item) { - $pat='#]*>(.*)#'; - $txt=preg_replace($pat,$item['text'],$txt); + $pat='#]*>(.*)#U'; + $txtChg=''.$item['text'].''; + $txt=preg_replace($pat,$txtChg,$txt); //''. //.'' } - $txt=preg_replace('#(]*)>|)#','',$txt); + //$txt=preg_replace('#(]*)>|)#','',$txt); + $txt=preg_replace('##U','',$txt); + $txt=str_replace('','',$txt); + + $txt=preg_replace("#title='([^\']+)'#U","$1",$txt); + + $txt=preg_replace("#(]+>)]+>(.*)#U","$1$2",$txt); + + # чистим кнопки от лишних тэгов + $txt=preg_replace('#tanslated_file=$translate_cache_path.$this->language.'.index.php'; file_put_contents($this->translated_file,$txt); + #echo $txt; + #exit; //var_dump($res); //echo $ids_txt; diff --git a/public/css/styles.css b/public/css/styles.css index 30de5bd1..e7e4aef9 100644 --- a/public/css/styles.css +++ b/public/css/styles.css @@ -1,3 +1,5 @@ +@import url("translate.css"); + html { background:#333; margin:0; @@ -109,7 +111,7 @@ header { height:52px; background-image: url(/images/main-menu-bg.png); background-repeat: repeat-x; - background-position-y: 15px; + background-position: 0 15px; } .header ul { height: 52px; diff --git a/public/css/translate.css b/public/css/translate.css new file mode 100644 index 00000000..09c754b9 --- /dev/null +++ b/public/css/translate.css @@ -0,0 +1,25 @@ +body.translate span[id*="trlt-"]:hover { + background-color:#faafba; + cursor:help; + color:black; +} + +body.translate span[id*="trlt-"]:hover:before { + content:'\01E2'; + display:block; + position:absolute; + float:left; + background-color:black; + font-size:8pt; + color:white; + padding:2px 4px; + +} + +dialog#translates h1 { + color:#337ab7; + font-size:120%; +} +dialog#translates textarea { + height:120px; +} \ No newline at end of file diff --git a/public/dialogs/_back.1733347857.jail-settings.php b/public/dialogs/_back.1733347857.jail-settings.php deleted file mode 100644 index 73b68834..00000000 --- a/public/dialogs/_back.1733347857.jail-settings.php +++ /dev/null @@ -1,75 +0,0 @@ - - -

- Create jail - Edit jail -

-

Jail Settings

-
-
-

- Jail name: - -

-

- Hostname (FQDN): - - -

-

- IP address: - -

-

- Root password: - -

-

- Root password (again): - -

-

- Net Interface: - - -

-

- Parameters: - -
- -
- -
- -

-

- Enabled services: - - -

- -
-
-
- Create" class="new button ok-but" /> - Save" class="edit button ok-but" /> - -
-
- -err_messages.add({ - 'vm_name':'translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>', -}); - - -

- translate('Clone Virtual Machine');?> -

-

translate('Cloned Virtual Machine Settings');?>

-
-
-

- translate('Virtual Machine name');?>: - -

-
-
-
- - -
-
diff --git a/public/dialogs/_translate.cache/en.bhyve-new.php b/public/dialogs/_translate.cache/en.bhyve-new.php deleted file mode 100644 index ed77fc9b..00000000 --- a/public/dialogs/_translate.cache/en.bhyve-new.php +++ /dev/null @@ -1,102 +0,0 @@ - - -

- translate('Create Virtual Machine');?> - translate('Edit Virtual Machine');?> -

-

translate('Virtual Machine Settings');?>

-
-
-

- translate('VM OS profile');?>: - -

-

- translate('Virtual Machine name');?>: - -

-

- translate('VM template (cpu, ram, hdd)');?>: - - -

-

- translate('VM CPUs');?>: - - - - - -

-

- translate('VM RAM');?>: - - - - - -

-

- translate('VM Image size');?>: - - - - - -

-

- translate('Attached boot ISO image');?>: - -

-

- translate('VNC IP address');?>: - - -

-

- translate('VNC PORT');?>: - -

-

- translate('VNC Password');?>: - translate('use to log in VNC console');?> -

-

- translate('Net Interface');?>: - - -

-
-
-
- - - -
-
diff --git a/public/dialogs/_translate.cache/en.bhyve-obtain.php b/public/dialogs/_translate.cache/en.bhyve-obtain.php deleted file mode 100644 index 69ebb3ee..00000000 --- a/public/dialogs/_translate.cache/en.bhyve-obtain.php +++ /dev/null @@ -1,84 +0,0 @@ - -

translate('Create Virtual Machine from Library');?>

-

translate('Virtual Machine Settings');?>

-
-
-

- translate('VM OS profile');?>: - -

-

- translate('Virtual Machine name');?>: - -

-

- translate('VM template (cpu, ram, hdd)');?>: - - -

-

- translate('VM CPUs');?>: - - - - -

-

- translate('VM RAM');?>: - - - - - - -

-

- translate('VM Image size');?>: - - - - - -

-

- translate('IP address');?>: - -

-

- translate('Gateway');?>: - -

-

- translate('Mask');?>: - -

-

- translate('VM Password');?>: - translate('default is');?>: «cbsd» -

-

- translate('USER Password');?>: - translate('напиши осознанный текст');?> -

-

- translate('Authkey');?>: - -

-

- translate('VNC Password');?>: - translate('use to log in VNC. Default is');?>: cbsd -

-
-
-
- - -
-
- -err_messages.add({ - 'jname':'translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>', -}); - - -

- translate('Rename virtual machine');?> -

-

translate('Renamed Virtual Machine Settings');?>

-
-
-

- translate('@rename_warning@'); ?> -

-

- translate('VM name');?>: - -

-
-
-
- - -
-
diff --git a/public/dialogs/_translate.cache/en.jail-clone.php b/public/dialogs/_translate.cache/en.jail-clone.php deleted file mode 100644 index 75e9b134..00000000 --- a/public/dialogs/_translate.cache/en.jail-clone.php +++ /dev/null @@ -1,36 +0,0 @@ - - -

- translate('Clone jail');?> -

-

translate('Cloned Jail Settings');?>

-
-
-

- translate('@clone_warning@'); ?> -

-

- translate('Jail name');?>: - -

-

- translate('Hostname');?> (FQDN): - -

-

- translate('IP address');?>: - -

-
-
-
- - -
-
diff --git a/public/dialogs/_translate.cache/en.jail-import.php b/public/dialogs/_translate.cache/en.jail-import.php deleted file mode 100644 index bfd98f4d..00000000 --- a/public/dialogs/_translate.cache/en.jail-import.php +++ /dev/null @@ -1,35 +0,0 @@ - - -

- translate('Import jail');?> - translate('Edit jail');?> -

-

translate('Jail Import');?>

-
-
-

- -

-
Drag & Drop Files Here
-
-or-
-
- -
-
-
- -

-
-
-
- -
-
- \ No newline at end of file diff --git a/public/dialogs/_translate.cache/en.jail-rename.php b/public/dialogs/_translate.cache/en.jail-rename.php deleted file mode 100644 index 00ee4d4c..00000000 --- a/public/dialogs/_translate.cache/en.jail-rename.php +++ /dev/null @@ -1,36 +0,0 @@ - - -

- translate('Rename jail');?> -

-

translate('Renamed Jail Settings');?>

-
-
-

- translate('@rename_warning@'); ?> -

-

- translate('Jail name');?>: - -

-

- translate('Hostname');?> (FQDN): - -

-

- translate('IP address');?>: - -

-
-
-
- - -
-
diff --git a/public/dialogs/_translate.cache/en.jail-settings-config-menu.php b/public/dialogs/_translate.cache/en.jail-settings-config-menu.php deleted file mode 100644 index f3892fdf..00000000 --- a/public/dialogs/_translate.cache/en.jail-settings-config-menu.php +++ /dev/null @@ -1,10 +0,0 @@ - \ No newline at end of file diff --git a/public/dialogs/_translate.cache/en.jail-settings.php b/public/dialogs/_translate.cache/en.jail-settings.php deleted file mode 100644 index e7e5e038..00000000 --- a/public/dialogs/_translate.cache/en.jail-settings.php +++ /dev/null @@ -1,75 +0,0 @@ - - -

- Create jail - Edit jail -

-

Jail Settings

-
-
-

- Jail name: - -

-

- Hostname (FQDN): - - -

-

- IP address: - -

-

- Root password: - -

-

- Root password (again): - -

-

- Net Interface: - - -

-

- Parameters: - -
- -
- -
- -

-

- Enabled services: - - -

- -
-
-
- - - -
-
- -

translate('Task log');?>

-
- Task log here… -
-
- -
- diff --git a/public/dialogs/_translate.cache/en.vnc-bhyve.php b/public/dialogs/_translate.cache/en.vnc-bhyve.php deleted file mode 100644 index b7f45563..00000000 --- a/public/dialogs/_translate.cache/en.vnc-bhyve.php +++ /dev/null @@ -1,19 +0,0 @@ - -
- - - - - -
-
-
-
- translate('Please, wait for initialize Virtual Machine');?> -
translate('You can click here, or wait');?>: translate('some time');?> -
-
-
- -
\ No newline at end of file diff --git a/public/dialogs/_translate.cache/en.vnc.php b/public/dialogs/_translate.cache/en.vnc.php deleted file mode 100644 index e761d8b9..00000000 --- a/public/dialogs/_translate.cache/en.vnc.php +++ /dev/null @@ -1,9 +0,0 @@ - -
- - - - -
- -
\ No newline at end of file diff --git a/public/dialogs/_translate.cache/ru.bhyve-clone.php b/public/dialogs/_translate.cache/ru.bhyve-clone.php index 98b88e11..2531c270 100644 --- a/public/dialogs/_translate.cache/ru.bhyve-clone.php +++ b/public/dialogs/_translate.cache/ru.bhyve-clone.php @@ -1,23 +1,23 @@

- translate('Clone Virtual Machine');?> + Clone Virtual Machine

-

translate('Cloned Virtual Machine Settings');?>

+

Cloned Virtual Machine Settings

- translate('Virtual Machine name');?>: + Имя виртуальной машины:

- - + +
diff --git a/public/dialogs/_translate.cache/ru.bhyve-new.php b/public/dialogs/_translate.cache/ru.bhyve-new.php index ed77fc9b..5a57e0d7 100644 --- a/public/dialogs/_translate.cache/ru.bhyve-new.php +++ b/public/dialogs/_translate.cache/ru.bhyve-new.php @@ -1,8 +1,8 @@

- translate('Create Virtual Machine');?> - translate('Edit Virtual Machine');?> + Создание виртуальной машины + Edit Virtual Machine

-

translate('Virtual Machine Settings');?>

+

Настройки

- translate('VM OS profile');?>: + Профиль операционной системы:

- translate('Virtual Machine name');?>: + Имя виртуальной машины:

- translate('VM template (cpu, ram, hdd)');?>: + VM template (cpu, ram, hdd):

- translate('VM CPUs');?>: + Количество виртуальных ядер: @@ -42,7 +42,7 @@ err_messages.add({

- translate('VM RAM');?>: + Объём памяти: @@ -50,7 +50,7 @@ err_messages.add({

- translate('VM Image size');?>: + Объём виртуального диска: @@ -58,45 +58,45 @@ err_messages.add({

- translate('Attached boot ISO image');?>: + Attached boot ISO image:

- translate('VNC IP address');?>: + VNC IP address:

- translate('VNC PORT');?>: + Порт для подключения VNC клиента (0 - авто):

- translate('VNC Password');?>: - translate('use to log in VNC console');?> + VNC Password: + use to log in VNC console

- translate('Net Interface');?>: + привязать к сетевому интерфейсу:

- - - + + +
diff --git a/public/dialogs/_translate.cache/ru.bhyve-obtain.php b/public/dialogs/_translate.cache/ru.bhyve-obtain.php index 69ebb3ee..ce3f1875 100644 --- a/public/dialogs/_translate.cache/ru.bhyve-obtain.php +++ b/public/dialogs/_translate.cache/ru.bhyve-obtain.php @@ -1,34 +1,34 @@ -

translate('Create Virtual Machine from Library');?>

-

translate('Virtual Machine Settings');?>

+

Создание из библиотеки

+

Настройки

- translate('VM OS profile');?>: + Профиль операционной системы:

- translate('Virtual Machine name');?>: + Имя виртуальной машины:

- translate('VM template (cpu, ram, hdd)');?>: + VM template (cpu, ram, hdd):

- translate('VM CPUs');?>: + Количество виртуальных ядер:

- translate('VM RAM');?>: + Объём памяти: @@ -37,7 +37,7 @@

- translate('VM Image size');?>: + Объём виртуального диска: @@ -45,40 +45,40 @@

- translate('IP address');?>: + IP-адрес:

- translate('Gateway');?>: + Gateway:

- translate('Mask');?>: + Mask:

- translate('VM Password');?>: - translate('default is');?>: «cbsd» + Пароль администратора: + по-умолчанию: «cbsd»

- translate('USER Password');?>: - translate('напиши осознанный текст');?> + USER Password: + user password (need correct)

- translate('Authkey');?>: + SSH ключ:

- translate('VNC Password');?>: - translate('use to log in VNC. Default is');?>: cbsd + VNC Password: + use to log in VNC. Default is: cbsd

- - + +
err_messages.add({ - 'jname':'translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>', + 'jname':'Не может быть пустым. Имя должно начинаться и содержать латинские буквы / a-z / и не должно иметь спец. символы: -,.=% и тд.', });

- translate('Rename virtual machine');?> + Rename virtual machine

-

translate('Renamed Virtual Machine Settings');?>

+

Renamed Virtual Machine Settings

- translate('@rename_warning@'); ?> + ВНИМАНИЕ! Контейнер запущен. Переименование работает только при выключенном окружении, поэтому данный контейнер предварительно будет остановлен!

- translate('VM name');?>: + VM name:

- - + +
diff --git a/public/dialogs/_translate.cache/ru.jail-clone.php b/public/dialogs/_translate.cache/ru.jail-clone.php index 75e9b134..cfe6d51c 100644 --- a/public/dialogs/_translate.cache/ru.jail-clone.php +++ b/public/dialogs/_translate.cache/ru.jail-clone.php @@ -1,36 +1,36 @@

- translate('Clone jail');?> + Clone jail

-

translate('Cloned Jail Settings');?>

+

Cloned Jail Settings

- translate('@clone_warning@'); ?> + ВНИМАНИЕ! Клонирование запущенного контейнера может привести к неконсистентным данным клона (например окружение с активной базой данных). Остановите контейнер для безопасного клонирования или продолжайте, если уверены в безопасности операции!

- translate('Jail name');?>: + имя контейнера:

- translate('Hostname');?> (FQDN): + имя хоста (FQDN):

- translate('IP address');?>: + IP-адрес:

- - + +
diff --git a/public/dialogs/_translate.cache/ru.jail-import.php b/public/dialogs/_translate.cache/ru.jail-import.php index bfd98f4d..dd5bd47a 100644 --- a/public/dialogs/_translate.cache/ru.jail-import.php +++ b/public/dialogs/_translate.cache/ru.jail-import.php @@ -1,25 +1,25 @@

- translate('Import jail');?> - translate('Edit jail');?> + Импорт контейнера + редактирование параметров контейнера

-

translate('Jail Import');?>

+

Импорт контейнера

-
Drag & Drop Files Here
-
-or-
+
Перетащите файлы сюда
+
-или-
@@ -29,7 +29,7 @@ err_messages.add({
- +
\ No newline at end of file diff --git a/public/dialogs/_translate.cache/ru.jail-rename.php b/public/dialogs/_translate.cache/ru.jail-rename.php index 00ee4d4c..2de01b2c 100644 --- a/public/dialogs/_translate.cache/ru.jail-rename.php +++ b/public/dialogs/_translate.cache/ru.jail-rename.php @@ -1,36 +1,36 @@

- translate('Rename jail');?> + Rename jail

-

translate('Renamed Jail Settings');?>

+

Renamed Jail Settings

- translate('@rename_warning@'); ?> + ВНИМАНИЕ! Контейнер запущен. Переименование работает только при выключенном окружении, поэтому данный контейнер предварительно будет остановлен!

- translate('Jail name');?>: + имя контейнера:

- translate('Hostname');?> (FQDN): + имя хоста (FQDN):

- translate('IP address');?>: + IP-адрес:

- - + +
diff --git a/public/dialogs/_translate.cache/ru.jail-settings-config-menu.php b/public/dialogs/_translate.cache/ru.jail-settings-config-menu.php index f3892fdf..c0e8b52b 100644 --- a/public/dialogs/_translate.cache/ru.jail-settings-config-menu.php +++ b/public/dialogs/_translate.cache/ru.jail-settings-config-menu.php @@ -1,10 +1,10 @@ \ No newline at end of file diff --git a/public/dialogs/_translate.cache/ru.jail-settings.php b/public/dialogs/_translate.cache/ru.jail-settings.php index 7b2a716e..7130ac9c 100644 --- a/public/dialogs/_translate.cache/ru.jail-settings.php +++ b/public/dialogs/_translate.cache/ru.jail-settings.php @@ -1,60 +1,60 @@

- Create jail - Edit jail + создание контейнера + редактирование параметров контейнера

-

Jail Settings

+

настройки контейнера

- Имя контейнера: + имя контейнера:

- Hostname (FQDN): + имя хоста (FQDN):

- IP address: + IP-адрес:

- Root password: + пароль пользователя ROOT (опционально):

- Root password (again): + пароль пользователя ROOT (повтор):

- Net Interface: + привязать к сетевому интерфейсу:

- Parameters: - + параметры: +
- +
- +
- +

- Enabled services: + автозапуск сервисов:

@@ -62,9 +62,9 @@ err_messages.add({
- - - + + +
-

translate('Task log');?>

+

Task log

- Task log here… + Task log here…
- +
diff --git a/public/dialogs/_translate.cache/ru.vnc-bhyve.php b/public/dialogs/_translate.cache/ru.vnc-bhyve.php index b7f45563..bf667e43 100644 --- a/public/dialogs/_translate.cache/ru.vnc-bhyve.php +++ b/public/dialogs/_translate.cache/ru.vnc-bhyve.php @@ -10,8 +10,8 @@
- translate('Please, wait for initialize Virtual Machine');?> -
translate('You can click here, or wait');?>: translate('some time');?> + Пожалуйста, подождите пока инициализируется виртуальная машина +
Вы можете кликнуть сюда или подождать: некоторое время
diff --git a/public/dialogs/authkey.php b/public/dialogs/authkey.php index d1b0470f..5bb02902 100644 --- a/public/dialogs/authkey.php +++ b/public/dialogs/authkey.php @@ -1,25 +1,25 @@ -

translate('Create Authkey');?>

-

translate('Settings');?>

+

Create Authkey

+

Settings

- translate('Authkey name');?>: + Authkey name:

- translate('Authkey');?>: + Authkey:

- - + Create" class="button ok-but" /> + Cancel" class="button red cancel-but" />
diff --git a/public/dialogs/!orig.jail-settings.php b/public/dialogs/back/!orig.jail-settings.php similarity index 100% rename from public/dialogs/!orig.jail-settings.php rename to public/dialogs/back/!orig.jail-settings.php diff --git a/public/dialogs/back/1733863638.system-login.php b/public/dialogs/back/1733863638.system-login.php new file mode 100644 index 00000000..90c679b6 --- /dev/null +++ b/public/dialogs/back/1733863638.system-login.php @@ -0,0 +1,20 @@ + + + + +
+
+

+ Login: + +

+

+ Password: + +

+
+
+
+ +
+
diff --git a/public/dialogs/back/1733863638.translate.php b/public/dialogs/back/1733863638.translate.php new file mode 100644 index 00000000..cbcaa6ad --- /dev/null +++ b/public/dialogs/back/1733863638.translate.php @@ -0,0 +1,27 @@ + +

+ Translate +

+

Translate phrase

+
+
+

+ Вы можете поучаствовать в переводе интерфейса на свой язык. +

+

+ Original phrase: + +

+

+ Translated phrase: + +

+
+ + +
+
+ + +
+
\ No newline at end of file diff --git a/public/dialogs/back/1733865625.translate.php b/public/dialogs/back/1733865625.translate.php new file mode 100644 index 00000000..75f7c16c --- /dev/null +++ b/public/dialogs/back/1733865625.translate.php @@ -0,0 +1,28 @@ + +

+ Translate +

+

Translate phrase

+
+
+

+ Вы можете поучаствовать в переводе интерфейса на свой язык. +

+

+ Original phrase: + +

+

+ Translated phrase: + +

+
+ + + +
+
+ + +
+
\ No newline at end of file diff --git a/public/dialogs/back/1733866006.translate.php b/public/dialogs/back/1733866006.translate.php new file mode 100644 index 00000000..f490cd5b --- /dev/null +++ b/public/dialogs/back/1733866006.translate.php @@ -0,0 +1,28 @@ + +

+ Translate +

+

Translate phrase

+
+
+

+ Вы можете поучаствовать в переводе интерфейса на свой язык. +

+

+ Original phrase: + +

+

+ Translated phrase: + +

+
+ + + +
+
+ + +
+
\ No newline at end of file diff --git a/public/dialogs/bases-repo.php b/public/dialogs/bases-repo.php index 52907774..767cf002 100644 --- a/public/dialogs/bases-repo.php +++ b/public/dialogs/bases-repo.php @@ -1,38 +1,38 @@ -

translate('Compile FreeBSD');?>

-

translate('Compile from bases');?>

+

Compile FreeBSD

+

Compile from bases

- translate('Version number');?>: + Version number:

- translate('Repository');?>: + Repository:

- - + Get" class="button ok-but" /> + Cancel" class="button red cancel-but" />
diff --git a/public/dialogs/bases.php b/public/dialogs/bases.php index 8ac54f02..e8eef61d 100644 --- a/public/dialogs/bases.php +++ b/public/dialogs/bases.php @@ -1,30 +1,30 @@ -

translate('Compile FreeBSD');?>

-

translate('Compile from sources');?>

+

Compile FreeBSD

+

Compile from sources

- translate('Sources version');?>: + Sources version:

- translate('Source');?>: + Source:

- - + Get" class="button ok-but" /> + Cancel" class="button red cancel-but" />
diff --git a/public/dialogs/bhyve-clone.php b/public/dialogs/bhyve-clone.php index 98b88e11..f3991000 100644 --- a/public/dialogs/bhyve-clone.php +++ b/public/dialogs/bhyve-clone.php @@ -1,23 +1,23 @@

- translate('Clone Virtual Machine');?> + Clone Virtual Machine

-

translate('Cloned Virtual Machine Settings');?>

+

Cloned Virtual Machine Settings

- translate('Virtual Machine name');?>: + Virtual Machine name:

- - + Clone" class="new button ok-but" /> + Cancel" class="button red cancel-but" />
diff --git a/public/dialogs/bhyve-new.php b/public/dialogs/bhyve-new.php index ed77fc9b..7a84318c 100644 --- a/public/dialogs/bhyve-new.php +++ b/public/dialogs/bhyve-new.php @@ -1,8 +1,8 @@

- translate('Create Virtual Machine');?> - translate('Edit Virtual Machine');?> + Create Virtual Machine + Edit Virtual Machine

-

translate('Virtual Machine Settings');?>

+

Virtual Machine Settings

- translate('VM OS profile');?>: + VM OS profile:

- translate('Virtual Machine name');?>: + Virtual Machine name:

- translate('VM template (cpu, ram, hdd)');?>: + VM template (cpu, ram, hdd):

- translate('VM CPUs');?>: + VM CPUs: @@ -42,7 +42,7 @@ err_messages.add({

- translate('VM RAM');?>: + VM RAM: @@ -50,7 +50,7 @@ err_messages.add({

- translate('VM Image size');?>: + VM Image size: @@ -58,45 +58,45 @@ err_messages.add({

- translate('Attached boot ISO image');?>: + Attached boot ISO image:

- translate('VNC IP address');?>: + VNC IP address:

- translate('VNC PORT');?>: + VNC PORT:

- translate('VNC Password');?>: - translate('use to log in VNC console');?> + VNC Password: + use to log in VNC console

- translate('Net Interface');?>: + Net Interface:

- - - + Create" class="new button ok-but" /> + Save" class="edit button ok-but" /> + Cancel" class="button red cancel-but" />
diff --git a/public/dialogs/bhyve-obtain.php b/public/dialogs/bhyve-obtain.php index 69ebb3ee..14d11cc9 100644 --- a/public/dialogs/bhyve-obtain.php +++ b/public/dialogs/bhyve-obtain.php @@ -1,34 +1,34 @@ -

translate('Create Virtual Machine from Library');?>

-

translate('Virtual Machine Settings');?>

+

Create Virtual Machine from Library

+

Virtual Machine Settings

- translate('VM OS profile');?>: + VM OS profile:

- translate('Virtual Machine name');?>: + Virtual Machine name:

- translate('VM template (cpu, ram, hdd)');?>: + VM template (cpu, ram, hdd):

- translate('VM CPUs');?>: + VM CPUs:

- translate('VM RAM');?>: + VM RAM: @@ -37,7 +37,7 @@

- translate('VM Image size');?>: + VM Image size: @@ -45,40 +45,40 @@

- translate('IP address');?>: + IP address:

- translate('Gateway');?>: + Gateway:

- translate('Mask');?>: + Mask:

- translate('VM Password');?>: - translate('default is');?>: «cbsd» + VM Password: + default is: «cbsd»

- translate('USER Password');?>: - translate('напиши осознанный текст');?> + USER Password: + user password (need correct)

- translate('Authkey');?>: + Authkey:

- translate('VNC Password');?>: - translate('use to log in VNC. Default is');?>: cbsd + VNC Password: + use to log in VNC. Default is: cbsd

- - + Create" class="button ok-but" /> + Cancel" class="button red cancel-but" />
err_messages.add({ - 'jname':'translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>', + 'jname':'Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%', });

- translate('Rename virtual machine');?> + Rename virtual machine

-

translate('Renamed Virtual Machine Settings');?>

+

Renamed Virtual Machine Settings

- translate('@rename_warning@'); ?> + @rename_warning@

- translate('VM name');?>: + VM name:

- - + Rename" class="new button ok-but" /> + Cancel" class="button red cancel-but" />
diff --git a/public/dialogs/helpers-add.php b/public/dialogs/helpers-add.php index 254e2ac4..48de2c0a 100644 --- a/public/dialogs/helpers-add.php +++ b/public/dialogs/helpers-add.php @@ -1,13 +1,13 @@

- translate('Helpers add');?> + Helpers add

-

translate('Select helpers for install');?>

+

Select helpers for install

- - + +
diff --git a/public/dialogs/image-import.php b/public/dialogs/image-import.php index 435922bb..770701f5 100644 --- a/public/dialogs/image-import.php +++ b/public/dialogs/image-import.php @@ -1,36 +1,36 @@

- translate('Image Import');?> - + Image Import +

-

translate('Settings');?>

+

Settings

- translate('New name');?>: + New name:

- translate('Hostname');?> (FQDN): + Hostname (FQDN):

- translate('IP address');?>: + IP address:

- - + Import" class="new button ok-but" /> + Cancel" class="button red cancel-but" />
diff --git a/public/dialogs/jail-clone.php b/public/dialogs/jail-clone.php index 75e9b134..dff32445 100644 --- a/public/dialogs/jail-clone.php +++ b/public/dialogs/jail-clone.php @@ -1,36 +1,36 @@

- translate('Clone jail');?> + Clone jail

-

translate('Cloned Jail Settings');?>

+

Cloned Jail Settings

- translate('@clone_warning@'); ?> + @clone_warning@

- translate('Jail name');?>: + Jail name:

- translate('Hostname');?> (FQDN): + Hostname (FQDN):

- translate('IP address');?>: + IP address:

- - + Clone" class="new button ok-but" /> + Cancel" class="button red cancel-but" />
diff --git a/public/dialogs/jail-import.php b/public/dialogs/jail-import.php index bfd98f4d..39a5219f 100644 --- a/public/dialogs/jail-import.php +++ b/public/dialogs/jail-import.php @@ -1,25 +1,25 @@

- translate('Import jail');?> - translate('Edit jail');?> + Import jail + Edit jail

-

translate('Jail Import');?>

+

Jail Import

-
Drag & Drop Files Here
-
-or-
+
Drag & Drop Files Here
+
-or-
@@ -29,7 +29,7 @@ err_messages.add({
- + Cancel" class="button red cancel-but" />
\ No newline at end of file diff --git a/public/dialogs/jail-rename.php b/public/dialogs/jail-rename.php index 00ee4d4c..e021f361 100644 --- a/public/dialogs/jail-rename.php +++ b/public/dialogs/jail-rename.php @@ -1,36 +1,36 @@

- translate('Rename jail');?> + Rename jail

-

translate('Renamed Jail Settings');?>

+

Renamed Jail Settings

- translate('@rename_warning@'); ?> + @rename_warning@

- translate('Jail name');?>: + Jail name:

- translate('Hostname');?> (FQDN): + Hostname (FQDN):

- translate('IP address');?>: + IP address:

- - + Rename" class="new button ok-but" /> + Cancel" class="button red cancel-but" />
diff --git a/public/dialogs/jail-settings-config-menu.php b/public/dialogs/jail-settings-config-menu.php index f3892fdf..7b3a43f4 100644 --- a/public/dialogs/jail-settings-config-menu.php +++ b/public/dialogs/jail-settings-config-menu.php @@ -1,10 +1,10 @@ \ No newline at end of file diff --git a/public/dialogs/jail-settings.php b/public/dialogs/jail-settings.php index 78a52890..12f882ad 100644 --- a/public/dialogs/jail-settings.php +++ b/public/dialogs/jail-settings.php @@ -1,60 +1,60 @@

- Create jail - Edit jail + Create jail + Edit jail

-

Jail Settings

+

Jail Settings

- Jail name: + Jail name:

- Hostname (FQDN): + Hostname (FQDN):

- IP address: + IP address:

- Root password: + Root password:

- Root password (again): + Root password (again):

- Net Interface: + Net Interface:

- Parameters: - + Parameters: +
- +
- +
- +

- Enabled services: + Enabled services:

@@ -62,9 +62,9 @@ err_messages.add({
- Create" class="new button ok-but" /> - Save" class="edit button ok-but" /> - Cancel" class="button red cancel-but" /> + Create" class="new button ok-but" /> + Save" class="edit button ok-but" /> + Cancel" class="button red cancel-but" />
err_messages.add({ - 'vm_name':'translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>', + 'vm_name':'Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%', });

- translate('Create Kubernetes');?> + Create Kubernetes

-

translate('create master node and workers');?>

+

create master node and workers

- translate('Cluster name');?>: + Cluster name:

- translate('Master Nodes count');?>: + Master Nodes count:

- translate('Master Nodes RAM size');?>: + Master Nodes RAM size:

- translate('Master Node CPUs count');?>: + Master Node CPUs count:

- translate('Master Node Image size');?>: + Master Node Image size: @@ -44,28 +44,28 @@ err_messages.add({

- translate('Worker Nodes count');?>: + Worker Nodes count:

- translate('Worker Nodes RAM size');?>: + Worker Nodes RAM size:

- translate('Worker Nodes CPUs count');?>: + Worker Nodes CPUs count:

- translate('Worker Nodes Image size');?>: + Worker Nodes Image size: @@ -73,15 +73,15 @@ err_messages.add({

- translate('Parameters');?>: - + Parameters: +
- +

- - + Create" class="new button ok-but" /> + Cancel" class="button red cancel-but" />
diff --git a/public/dialogs/media-upload.php b/public/dialogs/media-upload.php index 646eca58..51fa6e5f 100644 --- a/public/dialogs/media-upload.php +++ b/public/dialogs/media-upload.php @@ -2,18 +2,18 @@ err_messages.add({}); -

translate('Add Storage Media');?>

-

translate('Upload ISO');?>

+

Add Storage Media

+

Upload ISO

-
Drag & Drop Files Here
-
-or-
+
Drag & Drop Files Here
+
-or-
@@ -24,7 +24,7 @@ err_messages.add({});
- + Close" class="button red cancel-but" />
diff --git a/public/dialogs/media.php b/public/dialogs/media.php index 5048d141..0c87faf5 100644 --- a/public/dialogs/media.php +++ b/public/dialogs/media.php @@ -1,26 +1,26 @@ -

translate('Add Storage Media');?>

-

translate('Settings');?>

+

Add Storage Media

+

Settings

- translate('Media name');?>: + Media name:

- translate('Path');?>: + Path:

- - + +
diff --git a/public/dialogs/settings-getupdate.php b/public/dialogs/settings-getupdate.php index 28f862fb..fa1b1816 100644 --- a/public/dialogs/settings-getupdate.php +++ b/public/dialogs/settings-getupdate.php @@ -1,10 +1,10 @@ -

translate('Settings update');?>

+

Settings update

- Check for updates… + Check for updates…
- - + Get updates" class="new button ok-but hidden"> + Close" class="button red cancel-but" />
diff --git a/public/dialogs/src-get.php b/public/dialogs/src-get.php index 1182c4c1..cdf247e7 100644 --- a/public/dialogs/src-get.php +++ b/public/dialogs/src-get.php @@ -1,39 +1,39 @@ -

translate('Get Sources FreeBSD');?>

-

translate('Get Version');?>

+

Get Sources FreeBSD

+

Get Version

- translate('Version number');?>: + Version number:

- translate('Repository');?>: + Repository:

- - + Get" class="button ok-but" /> + Cancel" class="button red cancel-but" />
- - + +

- translate('Login');?>: + Login:

- translate('Password');?>: + Password:

- + Go to the system" class="button ok-but" />
diff --git a/public/dialogs/tasklog.php b/public/dialogs/tasklog.php index 52b79723..1744b87c 100644 --- a/public/dialogs/tasklog.php +++ b/public/dialogs/tasklog.php @@ -1,9 +1,9 @@ -

translate('Task log');?>

+

Task log

- Task log here… + Task log here…
- + Close" class="button red cancel-but" />
diff --git a/public/dialogs/translate.php b/public/dialogs/translate.php new file mode 100644 index 00000000..8b2bf49c --- /dev/null +++ b/public/dialogs/translate.php @@ -0,0 +1,28 @@ + +

+ Translate +

+

Translate phrase

+
+
+

+ Вы можете поучаствовать в переводе интерфейса на свой язык. +

+

+ Original phrase: + +

+

+ Translated phrase: + +

+
+ + + +
+
+ + +
+
\ No newline at end of file diff --git a/public/dialogs/users-new.php b/public/dialogs/users-new.php index 47efaf19..14a3ebd7 100644 --- a/public/dialogs/users-new.php +++ b/public/dialogs/users-new.php @@ -1,57 +1,57 @@

- translate('Add new user');?> - translate('Edit user info');?> + Add new user + Edit user info

-

translate('User Settings');?>

+

User Settings

- translate('User name');?>: + User name:

- translate('User password');?>: + User password:

- translate('User password (again)');?>: + User password (again):

- +

- translate('User password');?>: + User password:

- translate('User password (again)');?>: + User password (again):

- translate('First name');?>: + First name:

- translate('Last name');?>: + Last name:

- +

- - - + Add" class="new button ok-but" /> + Save" class="edit button ok-but" /> + Cancel" class="button red cancel-but" />
\ No newline at end of file diff --git a/public/dialogs/vm_packages-new.php b/public/dialogs/vm_packages-new.php index a98830aa..2b0641c4 100644 --- a/public/dialogs/vm_packages-new.php +++ b/public/dialogs/vm_packages-new.php @@ -1,36 +1,36 @@

- translate('Add new template');?> - translate('Edit template');?> + Add new template + Edit template

-

translate('Template Settings');?>

+

Template Settings

- translate('Name');?>: + Name:

- translate('Description');?>: + Description:

- translate('RAM Size');?>: + RAM Size:

- translate('HDD Size');?>: + HDD Size:

- translate('CPUs Count');?>: + CPUs Count: @@ -39,8 +39,8 @@ err_messages.add({

- - - + Add" class="new button ok-but" /> + Save" class="edit button ok-but" /> + Cancel" class="button red cancel-but" />
\ No newline at end of file diff --git a/public/dialogs/vnc-bhyve.php b/public/dialogs/vnc-bhyve.php index b7f45563..03f5df69 100644 --- a/public/dialogs/vnc-bhyve.php +++ b/public/dialogs/vnc-bhyve.php @@ -10,8 +10,8 @@
- translate('Please, wait for initialize Virtual Machine');?> -
translate('You can click here, or wait');?>: translate('some time');?> + Please, wait for initialize Virtual Machine +
You can click here, or wait: some time
diff --git a/public/dialogs/vpnet.php b/public/dialogs/vpnet.php index c92d1851..b2899de1 100644 --- a/public/dialogs/vpnet.php +++ b/public/dialogs/vpnet.php @@ -1,26 +1,26 @@ -

translate('Create Network');?>

-

translate('Settings');?>

+

Create Network

+

Settings

- translate('Network name');?>: + Network name:

- translate('Network');?>: + Network:

- - + Create" class="button ok-but" /> + Cancel" class="button red cancel-but" />
diff --git a/public/index.php b/public/index.php index f98d2650..846f1a48 100644 --- a/public/index.php +++ b/public/index.php @@ -12,6 +12,7 @@ require_once($_real_path.'/php/menu.php'); $chunks=Utils::gen_uri_chunks($uri); $clonos=new ClonOS($_real_path, $chunks); $locale = new Localization($_real_path.'/public/'); # /usr/home/web/cp/clonos/public/ +$translate=new Translate($locale,$_real_path); $menu=new Menu($locale, $chunks, $_real_path.'/public/pages/'); if(isset($_GET['upload'])){ @@ -32,7 +33,8 @@ $root=trim($_SERVER['DOCUMENT_ROOT'], $_ds); if(!empty($chunks)) $uri=$chunks[0]; $file_path=$_ds.$root.$_ds.'pages'.$_ds.$uri.$_ds; -$file_name=$file_path.$lang.'.index.php'; +//$file_name=$file_path.$lang.'.index.php'; +$file_name='index.php'; $json_name=$file_path.'a.json.php'; if(empty($uri)){ @@ -127,8 +129,11 @@ foreach(Config::$languages as $lng=>$lngname){
translate('pages',$chunks[0],'index.php'); +$incfile=$translate->get_translated_filename(); +if(file_exists($incfile)){ //$file_name + include($incfile); //$file_name } else { echo '

'.$locale->translate('Not implemented yet').'!

'; } @@ -158,6 +163,7 @@ $clonos->placeDialogs();
+placeDialogByName('translate'); ?> @@ -174,6 +180,8 @@ echo $menu->html;
+ + translate('DONATE'); ?> translate('VERSION'),': ',file_get_contents($clonos->realpath.'version'); ?> @@ -212,7 +220,8 @@ foreach(Config::$languages as $lng=>$lngname){
-