mirror of
				https://github.com/optim-enterprises-bv/control-pane.git
				synced 2025-10-30 17:37:59 +00:00 
			
		
		
		
	translate: rework
This commit is contained in:
		| @@ -9,8 +9,7 @@ server { | |||||||
|  |  | ||||||
| 	root /usr/local/www/clonos/public; | 	root /usr/local/www/clonos/public; | ||||||
| 	set $php_root $document_root; | 	set $php_root $document_root; | ||||||
|  | 	client_max_body_size 0; | ||||||
| 	client_max_body_size	0;		# upload ISO/VM |  | ||||||
|  |  | ||||||
| 	index  index.php; | 	index  index.php; | ||||||
|  |  | ||||||
| @@ -44,8 +43,7 @@ server { | |||||||
| 		fastcgi_param  SCRIPT_FILENAME    $php_root$fastcgi_script_name; | 		fastcgi_param  SCRIPT_FILENAME    $php_root$fastcgi_script_name; | ||||||
| 		fastcgi_pass  unix:/tmp/php-fpm.sock; | 		fastcgi_pass  unix:/tmp/php-fpm.sock; | ||||||
| 		fastcgi_param WORKDIR /usr/jails; | 		fastcgi_param WORKDIR /usr/jails; | ||||||
|  | 		# fastcgi_param APPLICATION_ENV development; | ||||||
| 		fastcgi_param		APPLICATION_ENV		development;	# comment to disable DEVELOPER mode: |  | ||||||
| 		fastcgi_read_timeout 1200;	# keep in sync with PHP max_execution_time = 1200 | 		fastcgi_read_timeout 1200;	# keep in sync with PHP max_execution_time = 1200 | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
|   | |||||||
| @@ -109,7 +109,15 @@ class ClonOS { | |||||||
| 			{ | 			{ | ||||||
| 				$this->uri_chunks[0]='overview'; | 				$this->uri_chunks[0]='overview'; | ||||||
| 				$this->realpath_page=$this->realpath_public.'pages/'.$this->uri_chunks[0].'/'; | 				$this->realpath_page=$this->realpath_public.'pages/'.$this->uri_chunks[0].'/'; | ||||||
| 				$this->_translate->translate($this->realpath_page,'index.php'); | 				$trres=$this->_translate->translate('pages',$this->uri_chunks[0],'index.php'); | ||||||
|  | 				 | ||||||
|  | 				$incfile=$this->_translate->get_translated_filename(); | ||||||
|  | 				if(file_exists($incfile)) | ||||||
|  | 				{ | ||||||
|  | 					include($incfile); | ||||||
|  | 				} | ||||||
|  | 				if(isset($trres['message'])) echo $trres['message'],"<br>"; | ||||||
|  | 				echo 'incfile: ',$incfile;exit; | ||||||
| 				//break 1; | 				//break 1; | ||||||
| 			} | 			} | ||||||
|  |  | ||||||
| @@ -1308,9 +1316,9 @@ class ClonOS { | |||||||
| 			'ver'=>'native', | 			'ver'=>'native', | ||||||
| 			'astart'=>0, | 			'astart'=>0, | ||||||
| 			'interface'=>$form['interface'], | 			'interface'=>$form['interface'], | ||||||
| 			'vm_size'=>$form['vm_size'], | 			'vm_size'=>$form['vm_imgsize']*1024*1024*1024, | ||||||
| 			'vm_cpus'=>$form['vm_cpus'], | 			'vm_cpus'=>$form['vm_cpus'], | ||||||
| 			'vm_ram'=>$form['vm_ram'], | 			'vm_ram'=>$form['vm_ram']*1024*1024*1024, | ||||||
| 			'vm_os_type'=>$os_items['type'], | 			'vm_os_type'=>$os_items['type'], | ||||||
| 			'vm_efi'=>'uefi', | 			'vm_efi'=>'uefi', | ||||||
| 			'vm_os_profile'=>$os_items['profile'], | 			'vm_os_profile'=>$os_items['profile'], | ||||||
| @@ -1454,9 +1462,9 @@ class ClonOS { | |||||||
| 				$this->_user_info['username'], | 				$this->_user_info['username'], | ||||||
| 				$form['vm_name'], | 				$form['vm_name'], | ||||||
| 				$os_profile, | 				$os_profile, | ||||||
| 				$form['vm_size'], | 				$form['vm_size']*1024*1024*1024, | ||||||
| 				$form['vm_cpus'], | 				$form['vm_cpus'], | ||||||
| 				$form['vm_ram'], | 				$form['vm_ram']*1024*1024*1024, | ||||||
| 				$os_type, | 				$os_type, | ||||||
| 				$form['mask'], | 				$form['mask'], | ||||||
| 				$form['ip4_addr'], | 				$form['ip4_addr'], | ||||||
| @@ -2063,11 +2071,22 @@ class ClonOS { | |||||||
| 		if(empty($this->_dialogs)) return; | 		if(empty($this->_dialogs)) return; | ||||||
| 		echo PHP_EOL; | 		echo PHP_EOL; | ||||||
| 		foreach($this->_dialogs as $dialog_name){ | 		foreach($this->_dialogs as $dialog_name){ | ||||||
|  | 			/* | ||||||
| 			$file_name=$this->realpath_public.'dialogs/'.$dialog_name.'.php'; | 			$file_name=$this->realpath_public.'dialogs/'.$dialog_name.'.php'; | ||||||
| 			if(file_exists($file_name)){ | 			if(file_exists($file_name)){ | ||||||
| 				include($file_name); | 				include($file_name); | ||||||
| 				echo PHP_EOL,PHP_EOL; | 				echo PHP_EOL,PHP_EOL; | ||||||
| 			} | 			} | ||||||
|  | 			*/ | ||||||
|  | 			 | ||||||
|  | 			$trres=$this->_translate->translate('dialogs','dialogs/',$dialog_name.'.php'); | ||||||
|  | 			 | ||||||
|  | 			$incfile=$this->_translate->get_translated_filename(); | ||||||
|  | 			if(file_exists($incfile)) | ||||||
|  | 			{ | ||||||
|  | 				include($incfile); | ||||||
|  | 			} | ||||||
|  | 			//if(isset($trres['message'])) echo $trres['message'],"<br>"; | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
|   | |||||||
| @@ -150,6 +150,7 @@ class Db { | |||||||
| 			} else { | 			} else { | ||||||
| 				$res = $query->fetchAll(PDO::FETCH_ASSOC); | 				$res = $query->fetchAll(PDO::FETCH_ASSOC); | ||||||
| 			} | 			} | ||||||
|  | 			 | ||||||
| 			return $res; | 			return $res; | ||||||
| 		} catch(PDOException $e) { | 		} catch(PDOException $e) { | ||||||
| 			return array('error' => true, 'info' => 'Catch exception: ' . $e->getMessage());	//$this->error | 			return array('error' => true, 'info' => 'Catch exception: ' . $e->getMessage());	//$this->error | ||||||
|   | |||||||
| @@ -4,9 +4,11 @@ class Localization | |||||||
| { | { | ||||||
| 	private $language='en'; | 	private $language='en'; | ||||||
| 	private $translate_arr=array(); | 	private $translate_arr=array(); | ||||||
|  | 	private $realpath=''; | ||||||
|  |  | ||||||
| 	function __construct($realpath_public) | 	function __construct($realpath_public) | ||||||
| 	{ | 	{ | ||||||
|  | 		$this->realpath=$realpath_public; | ||||||
| 		(isset($_COOKIE['lang'])) AND $this->language=$_COOKIE['lang']; | 		(isset($_COOKIE['lang'])) AND $this->language=$_COOKIE['lang']; | ||||||
| 		(!array_key_exists($this->language, Config::$languages)) AND $this->language='en'; | 		(!array_key_exists($this->language, Config::$languages)) AND $this->language='en'; | ||||||
| 		include($realpath_public.'/lang/'.$this->language.'.php'); | 		include($realpath_public.'/lang/'.$this->language.'.php'); | ||||||
| @@ -18,6 +20,11 @@ class Localization | |||||||
| 		return $this->language; | 		return $this->language; | ||||||
| 	} | 	} | ||||||
| 	 | 	 | ||||||
|  | 	public function get_path() | ||||||
|  | 	{ | ||||||
|  | 		return $this->realpath; | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	public function translate($phrase) | 	public function translate($phrase) | ||||||
| 	{ | 	{ | ||||||
| 		return (isset($this->translate_arr[$phrase])) ? $this->translate_arr[$phrase] : $phrase; | 		return (isset($this->translate_arr[$phrase])) ? $this->translate_arr[$phrase] : $phrase; | ||||||
| @@ -32,21 +39,63 @@ class Translate | |||||||
| 	private $language=''; | 	private $language=''; | ||||||
| 	private $realpath=''; | 	private $realpath=''; | ||||||
| 	 | 	 | ||||||
| 	function __construct($locale,$realpath) | 	private $translated_file=''; | ||||||
|  | 	/* | ||||||
|  | 	private $page_file_name=''; | ||||||
|  | 	private $dialog_file_name=''; | ||||||
|  | 	private $json_file_name=''; | ||||||
|  | 	*/ | ||||||
|  | 	 | ||||||
|  | 	function __construct($locale) | ||||||
| 	{ | 	{ | ||||||
| 		 | 		 | ||||||
| 		$this->locale=$locale; | 		$this->locale=$locale; | ||||||
| 		$this->language=$this->locale->get_lang(); | 		$this->language=$this->locale->get_lang(); | ||||||
| 		$this->realpath=$realpath; | 		$this->realpath=$locale->get_path(); | ||||||
| 	} | 	} | ||||||
| 	 | 	 | ||||||
| 	public function translate($path,$file_name) | 	public function translate($path,$page,$file_name) | ||||||
| 	{ | 	{ | ||||||
| 		$file=$path.$file_name; | 		$translate_cache='_translate.cache'; | ||||||
|  | 		switch($path) | ||||||
|  | 		{ | ||||||
|  | 			case 'pages': | ||||||
|  | 				$full_path=$this->realpath.$path.DIRECTORY_SEPARATOR.$page.DIRECTORY_SEPARATOR; | ||||||
|  | 				$translate_cache_path=$full_path.$translate_cache.DIRECTORY_SEPARATOR; | ||||||
|  | 				$this->translated_file=$translate_cache_path.$this->language.'.index.php'; | ||||||
|  | 				break; | ||||||
|  | 			case 'dialogs': | ||||||
|  | 				$full_path=$this->realpath.$path.DIRECTORY_SEPARATOR; | ||||||
|  | 				$translate_cache_path=$full_path.$translate_cache.DIRECTORY_SEPARATOR; | ||||||
|  | 				$this->translated_file=$translate_cache_path.$this->language.'.'.$file_name; | ||||||
|  | 				break; | ||||||
|  | 		} | ||||||
|  | 		 | ||||||
|  | 		if(!is_dir($translate_cache_path)) | ||||||
|  | 		{ | ||||||
|  | 			mkdir($translate_cache_path); | ||||||
|  | 			$ttxt="This files is cache of translated pages, do not translate it!\n". | ||||||
|  | 				"If you are a translator, please read the documentation on the translation on the website.\n". | ||||||
|  | 				"Thank you."; | ||||||
|  | 			file_put_contents($translate_cache_path.'!dont.touch.files',$ttxt); | ||||||
|  | 		} | ||||||
|  | 		 | ||||||
|  | 		$file=$full_path.$file_name; | ||||||
|  |  | ||||||
|  | 		$mtime_orig=filemtime($file); | ||||||
|  | 		$mtime_translate=filemtime($this->translated_file); | ||||||
|  | 		# $mtime_db_update — дата последней модификации перевода в БД | ||||||
|  | 		 | ||||||
|  | 		if($mtime_orig<$mtime_translate) | ||||||
|  | 		{ | ||||||
|  | 			return ['message'=>'translate from cache']; | ||||||
|  | 		} | ||||||
|  | 		 | ||||||
|  | 		# при сохранении в БД перевода на язык пользователя, нужно удалять файл кэша | ||||||
|  | 		# или во временный файл сохранять даты обновления разных языков, а уже там проверять дату | ||||||
|  |  | ||||||
| 		$db=new Db('clonos'); | 		$db=new Db('clonos'); | ||||||
| 		if(!$db->isConnected())	return array('error'=>true,'error_message'=>'db connection lost!'); | 		if(!$db->isConnected())	return array('error'=>true,'error_message'=>'db connection lost!'); | ||||||
| 		//$status=(new Db('base','cbsdtaskd'))->selectOne("SELECT status,logfile,errcode  |  | ||||||
| 		//			FROM taskd WHERE id=?", array([$task_id]); |  | ||||||
|  |  | ||||||
| 		if(file_exists($file)) | 		if(file_exists($file)) | ||||||
| 		{ | 		{ | ||||||
| @@ -55,6 +104,8 @@ class Translate | |||||||
| 			preg_match_all('#<translate([^>]*)>(.*)</translate>#',$txt,$res,PREG_SET_ORDER); | 			preg_match_all('#<translate([^>]*)>(.*)</translate>#',$txt,$res,PREG_SET_ORDER); | ||||||
| //			var_dump($res);exit; | //			var_dump($res);exit; | ||||||
| 			 | 			 | ||||||
|  | 			$ids_arr=[]; | ||||||
|  | 			 | ||||||
| 			foreach($res as $item) | 			foreach($res as $item) | ||||||
| 			{ | 			{ | ||||||
| 				$id=-1; | 				$id=-1; | ||||||
| @@ -67,12 +118,12 @@ class Translate | |||||||
| 				 | 				 | ||||||
| 				if($attrs!='') | 				if($attrs!='') | ||||||
| 				{ | 				{ | ||||||
| 					//$txt=$item[2]; | 					// если у тэга есть ID, то проверяем текст и формируем шаблон | ||||||
| 		//echo '<pre>'.$txt; |  | ||||||
| 					preg_match_all('#((id)="?([\d]+)"?|update)#',$attrs,$params,PREG_SET_ORDER); | 					preg_match_all('#((id)="?([\d]+)"?|update)#',$attrs,$params,PREG_SET_ORDER); | ||||||
| 					if(is_array($params) && $this->language!='en') | 					if(is_array($params))	// && $this->language!='en' | ||||||
| 					{ | 					{ | ||||||
| 						// если у пользователя язык интерфейса не английский, то переводим | 						// ИЗМЕНИТЬ КОММЕНТАРИЙ! --- если у пользователя язык интерфейса не английский, то переводим | ||||||
|  | 						// обрабатываем оригинальный текст и создаём шаблоны разных языков | ||||||
| 						foreach($params as $p) | 						foreach($params as $p) | ||||||
| 						{ | 						{ | ||||||
| 							if(isset($p[2]) && $p[2]=='id') | 							if(isset($p[2]) && $p[2]=='id') | ||||||
| @@ -83,23 +134,28 @@ class Translate | |||||||
| 									$dbres=$db->selectOne("select text from lang_en where id=?",[[$id,PDO::PARAM_INT]]); | 									$dbres=$db->selectOne("select text from lang_en where id=?",[[$id,PDO::PARAM_INT]]); | ||||||
| 									if(!empty($dbres)) | 									if(!empty($dbres)) | ||||||
| 									{ | 									{ | ||||||
| 										var_dump($dbres);exit; | 										if($text!=$dbres['text']) | ||||||
| 									}else{ | 										{ | ||||||
| 										echo 'no data'; | 											// если оригинальный текст изменился, то обновляем его в базе | ||||||
| 									} | 											$dbres1=$db->update('update lang_en set text=? where id=?',[[$text,PDO::PARAM_STR],[$id,PDO::PARAM_INT]]); | ||||||
| 									 | 											if(isset($dbres1['rowCount'])) | ||||||
| 									 | 											{ | ||||||
| 								}else{ | 												if($dbres1['rowCount']>0) | ||||||
|  | 												{ | ||||||
|  | 													$is_changed=true; | ||||||
| 												} | 												} | ||||||
| 											} | 											} | ||||||
| 							 | 										} | ||||||
|  | 									} | ||||||
|  | 									$ids_arr[]=$id; | ||||||
|  | 								} | ||||||
|  | 							} | ||||||
|  | /*							 | ||||||
| 							if($p[0]=='update' && $id>0) | 							if($p[0]=='update' && $id>0) | ||||||
| 							{ | 							{ | ||||||
| 								echo "\tupdate id: ",$id,"\n"; | 								echo "\tupdate id: ",$id,"\n"; | ||||||
| 							} | 							} | ||||||
|  | */ | ||||||
| 							 |  | ||||||
| 			//echo "\tupdate: ",var_dump($update),"\n"; |  | ||||||
| 						} | 						} | ||||||
| 						 | 						 | ||||||
| 					}else{ | 					}else{ | ||||||
| @@ -139,24 +195,60 @@ UPDATE SQLITE_SEQUENCE SET seq = 0 WHERE name = 'lang_en' | |||||||
| 							$new_text='<translate id="'.$dbres['lastID'].'">'.$text."</translate>"; | 							$new_text='<translate id="'.$dbres['lastID'].'">'.$text."</translate>"; | ||||||
| 							$txt=str_replace($tag,$new_text,$txt); | 							$txt=str_replace($tag,$new_text,$txt); | ||||||
| 							$is_changed=true; | 							$is_changed=true; | ||||||
|  | 							 | ||||||
|  | 							$ids_arr[]=$dbres['lastID']; | ||||||
| 						} | 						} | ||||||
| 					} | 					} | ||||||
| 				} | 				} | ||||||
| 			} | 			} | ||||||
| 			 | 			 | ||||||
|  | 			// бэкапим предыдущий файл и сохраняем видоизменённый | ||||||
| 			if($is_changed) | 			if($is_changed) | ||||||
| 			{ | 			{ | ||||||
| 				rename($path.$file_name,$path.'orig.'.$file_name); | 				rename($full_path.$file_name,$full_path.'_back.'.time().'.'.$file_name); | ||||||
| 				file_put_contents($path.$file_name,$txt); | 				file_put_contents($full_path.$file_name,$txt); | ||||||
| 			} | 			} | ||||||
| 			echo $txt; |  | ||||||
| 			exit; |  | ||||||
| 		}else{ |  | ||||||
| 			 | 			 | ||||||
|  | 			// переводим на другие языки | ||||||
|  | 			$ids_txt=join(',',$ids_arr); | ||||||
|  | 			$sql="select en_id,text from lang_other where lang=? and en_id in ({$ids_txt})"; | ||||||
|  | 			$res=$db->select($sql,[[$this->language,PDO::PARAM_STR]]); | ||||||
|  | //			$res=$db->select("select en_id,text from lang_other where lang=? and en_id in (?)",[[$this->language,PDO::PARAM_STR],[[$ids_arr]]]); | ||||||
|  | 			if($res['error']) | ||||||
|  | 			{ | ||||||
|  | 				echo 'db error'; | ||||||
|  | 				exit; | ||||||
|  | 			} | ||||||
|  | 			 | ||||||
|  | 			foreach($res as $item) | ||||||
|  | 			{ | ||||||
|  | 				$pat='#<translate id="'.$item['en_id'].'"[^>]*>(.*)</translate>#'; | ||||||
|  | 				$txt=preg_replace($pat,$item['text'],$txt); | ||||||
|  | 			} | ||||||
|  | 			 | ||||||
|  | 			$txt=preg_replace('#(<translate([^>]*)>|</translate>)#','',$txt); | ||||||
|  | 			 | ||||||
|  | 			//$this->tanslated_file=$translate_cache_path.$this->language.'.index.php'; | ||||||
|  | 			file_put_contents($this->translated_file,$txt); | ||||||
|  |  | ||||||
|  | 			//var_dump($res); | ||||||
|  | 			//echo $ids_txt; | ||||||
|  | 			 | ||||||
|  | 			 | ||||||
|  | 			 | ||||||
|  | 			 | ||||||
|  | 			return ['message'=>'translated to: '.$this->language]; | ||||||
|  | 		}else{ | ||||||
|  | 			return ['error'=>true,'message'=>'no file...']; | ||||||
| 		} | 		} | ||||||
|  |  | ||||||
| 		/* | 		/* | ||||||
| 			<translate([^>]*)>(.*)</translate> | 			<translate([^>]*)>(.*)</translate> | ||||||
| 		*/ | 		*/ | ||||||
| 	} | 	} | ||||||
|  | 	 | ||||||
|  | 	public function get_translated_filename() | ||||||
|  | 	{ | ||||||
|  | 		return $this->translated_file; | ||||||
|  | 	} | ||||||
| } | } | ||||||
							
								
								
									
										45
									
								
								php/menu.php
									
									
									
									
									
								
							
							
						
						
									
										45
									
								
								php/menu.php
									
									
									
									
									
								
							| @@ -27,13 +27,40 @@ | |||||||
| class Menu | class Menu | ||||||
| { | { | ||||||
| 	public $html=array(); | 	public $html=array(); | ||||||
| 	public $title='Error'; | 	public $title='';	//'Error'; | ||||||
| 	public $first_key=array(); | 	public $first_key=array(); | ||||||
|  | 	private $_public_pages_path=''; | ||||||
|  |  | ||||||
| 	function __construct(Localization $lang, $uri_chunks) | 	function __construct(Localization $lang, $uri_chunks, $public_pages_path) | ||||||
| 	{ | 	{ | ||||||
| 		$menu_config = Config::$menu; | 		$menu_config = Config::$menu; | ||||||
| 		$this->first_key = array_key_first($menu_config); | 		$this->first_key = array_key_first($menu_config); | ||||||
|  | 		$this->_public_pages_path=$public_pages_path; | ||||||
|  | 		$titles=[]; | ||||||
|  | 		 | ||||||
|  | 		$translate_path=$this->_public_pages_path.'_translate.cache/'; | ||||||
|  | 		$translate_file=$translate_path.$lang->get_lang().'.menu.php'; | ||||||
|  | 		#echo $translate_path."\n"; | ||||||
|  | 		#echo getcwd()."\n"; | ||||||
|  |  | ||||||
|  | 		if(!is_dir($translate_path)) | ||||||
|  | 		{ | ||||||
|  | 			mkdir($translate_path); | ||||||
|  | 		} | ||||||
|  | 		 | ||||||
|  | 		if(file_exists($translate_file)) | ||||||
|  | 		{ | ||||||
|  | 			$this->html=file_get_contents($translate_file); | ||||||
|  | 			 | ||||||
|  | 			if(getenv('APPLICATION_ENV') != 'development') | ||||||
|  | 			{ | ||||||
|  | 				$this->html=preg_replace('#\t<li><a href="/sqlite/".+</li>\n#','',$this->html); | ||||||
|  | 			} | ||||||
|  | 			 | ||||||
|  | 			return; | ||||||
|  | 		} | ||||||
|  |  | ||||||
|  | //var_dump($this->_public_pages_path);exit; | ||||||
|  |  | ||||||
| 		if(getenv('APPLICATION_ENV') != 'development'){ | 		if(getenv('APPLICATION_ENV') != 'development'){ | ||||||
| 			unset($menu_config['sqlite']); | 			unset($menu_config['sqlite']); | ||||||
| @@ -49,6 +76,7 @@ class Menu | |||||||
| 		foreach($menu_config as $link=>$val){ | 		foreach($menu_config as $link=>$val){ | ||||||
| 			$mname=$lang->translate($val['name']); | 			$mname=$lang->translate($val['name']); | ||||||
| 			$mtitle=$lang->translate($val['title']); | 			$mtitle=$lang->translate($val['title']); | ||||||
|  | 			$titles[$link]=$mtitle; | ||||||
| 			$sel=''; | 			$sel=''; | ||||||
| 			if($qstr==$link){ | 			if($qstr==$link){ | ||||||
| 				$sel=' class="sel"'; | 				$sel=' class="sel"'; | ||||||
| @@ -79,13 +107,24 @@ class Menu | |||||||
| 			$this->html.= '</li>'.PHP_EOL; | 			$this->html.= '</li>'.PHP_EOL; | ||||||
| 		} | 		} | ||||||
|  |  | ||||||
| 		$this->html.='</ul>'; | 		$this->html.='	</ul>'."\n"; | ||||||
|  |  | ||||||
|  | 		/* | ||||||
| 		if($this->title=='Error'){ | 		if($this->title=='Error'){ | ||||||
| 			$other_titles = Config::$other_titles; | 			$other_titles = Config::$other_titles; | ||||||
| 			if(isset($other_titles[$qstr])){ | 			if(isset($other_titles[$qstr])){ | ||||||
| 				$this->title=$lang->translate($other_titles[$qstr]); | 				$this->title=$lang->translate($other_titles[$qstr]); | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
|  | 		*/ | ||||||
|  | 		$other_titles = Config::$other_titles; | ||||||
|  | 		$titles=array_merge($titles,$other_titles); | ||||||
|  | 		 | ||||||
|  | 		$this->html.='	<script type="text/javascript">'.PHP_EOL; | ||||||
|  | 		$this->html.="\t\tvar page_titles=".json_encode($titles)."\n"; | ||||||
|  | 		$this->html.='	</script>'.PHP_EOL; | ||||||
|  |  | ||||||
|  | 		file_put_contents($translate_file,$this->html); | ||||||
|  | 		 | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
|   | |||||||
| @@ -76,6 +76,9 @@ main { | |||||||
| 	box-shadow:7px 0px 10px 1px rgba(0,0,0,0.65); | 	box-shadow:7px 0px 10px 1px rgba(0,0,0,0.65); | ||||||
| 	border-right:1px solid #222; | 	border-right:1px solid #222; | ||||||
| } | } | ||||||
|  | main.blur { | ||||||
|  | 	filter: blur(5px); | ||||||
|  | } | ||||||
| .closer { | .closer { | ||||||
| 	height:100%; | 	height:100%; | ||||||
| 	position:absolute; | 	position:absolute; | ||||||
|   | |||||||
							
								
								
									
										75
									
								
								public/dialogs/!orig.jail-settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										75
									
								
								public/dialogs/!orig.jail-settings.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,75 @@ | |||||||
|  | <script type="text/javascript"> | ||||||
|  | err_messages.add({ | ||||||
|  | 	'jname':'<translate>Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%</translate>', | ||||||
|  | 	'hostname':'<translate>This field can not be empty</translate>', | ||||||
|  | 	'ip':'<translate>Write correct ip address, e.g: 10.0.0.2</translate>', | ||||||
|  | 	'rootpass':'<translate>Password can not be less than 3 symbols</translate>', | ||||||
|  | 	'rootpass1':'<translate>Please retype password correctly</translate>', | ||||||
|  | }); | ||||||
|  | </script> | ||||||
|  | <dialog id="jail-settings" class="window-box new"> | ||||||
|  | 	<h1> | ||||||
|  | 		<span class="new"><translate>Create jail</translate></span> | ||||||
|  | 		<span class="edit"><translate>Edit jail</translate></span> | ||||||
|  | 	</h1> | ||||||
|  | 	<h2><translate>Jail Settings</translate></h2> | ||||||
|  | 	<form class="win" method="post" id="jailSettings" onsubmit="return false;"> | ||||||
|  | 		<div class="window-content"> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><translate>Jail name</translate>:</span> | ||||||
|  | 				<input type="text" name="jname" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{2,}" required="required" class="edit-disable" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><translate>Hostname</translate> (FQDN):</span> | ||||||
|  | 				<input type="text" name="host_hostname" value="" required="required" /> | ||||||
|  | <!-- | ||||||
|  | 				<small class="astart-warn">— <translate>available on the jail is not running</translate></small> | ||||||
|  | --> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><translate>IP address</translate>:</span> | ||||||
|  | 				<input type="text" name="ip4_addr" value="DHCP" pattern="^DHCP$|^DHCP[vV]6$|^(?:[0-9]{1,3}\.){3}[0-9]{1,3}(\/[\d]{1,3})?$" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p class="new"> | ||||||
|  | 				<span class="field-name"><translate>Root password</translate>:</span> | ||||||
|  | 				<input type="password" name="user_pw_root" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> | ||||||
|  | 			</p> | ||||||
|  | 			<p class="new"> | ||||||
|  | 				<span class="field-name"><translate>Root password (again)</translate>:</span> | ||||||
|  | 				<input type="password" name="user_pw_root_1" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><translate>Net Interface</translate>:</span> | ||||||
|  | 				<input type="radio" name="interface" value="auto" id="rint0" checked="checked" class="inline"><label for="rint0">auto</label></radio> | ||||||
|  | 				<input type="radio" name="interface" value="lo0" id="rint2" class="inline"><label for="rint2">lo0</label></radio> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><translate>Parameters</translate>:</span> | ||||||
|  | 				<input type="checkbox" name="baserw" id="bwritable-id" /><label for="bwritable-id"> <translate>Base writable</translate>?</label> | ||||||
|  | 				<br /> | ||||||
|  | 				<input type="checkbox" name="mount_ports" id="mount-id" /><label for="mount-id"> <translate>Mount</translate> /usr/ports?</label> | ||||||
|  | 				<br /> | ||||||
|  | 				<input type="checkbox" name="astart" id="astart-id" /><label for="astart-id"> <translate>Autostart jail at system startup</translate></label> | ||||||
|  | 				<br /> | ||||||
|  | 				<input type="checkbox" name="vnet" id="vnet-id" /><label for="vnet-id"> <translate>Virtual network stack (VIMAGE)</translate></label> | ||||||
|  | 			</p> | ||||||
|  | 			<p class="new"> | ||||||
|  | 				<span class="field-name"><translate>Enabled services</translate>:</span> | ||||||
|  | 				<input type="checkbox" name="serv-ftpd" value="ftpd" id="esrv0" class="inline"><label for="esrv0">ftpd</label></checkbox> | ||||||
|  | 				<input type="checkbox" name="serv-sshd" value="sshd" id="esrv1" class="inline"><label for="esrv1">sshd</label></checkbox> | ||||||
|  | 			</p> | ||||||
|  |  | ||||||
|  | 		</div> | ||||||
|  | 	</form> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="<translate>Create</translate>" class="new button ok-but" /> | ||||||
|  | 		<input type="button" value="<translate>Save</translate>" class="edit button ok-but" /> | ||||||
|  | 		<input type="button" value="<translate>Cancel</translate>" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
|  | <?php | ||||||
|  |  | ||||||
|  | /* | ||||||
|  | сложное правило для пароля: цифры, буквы маленькие и заглавные, плюс спецсимволы | ||||||
|  | ^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[^\w\s]).{8,20}$ | ||||||
|  | */ | ||||||
							
								
								
									
										75
									
								
								public/dialogs/_back.1733347857.jail-settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										75
									
								
								public/dialogs/_back.1733347857.jail-settings.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,75 @@ | |||||||
|  | <script type="text/javascript"> | ||||||
|  | err_messages.add({ | ||||||
|  | 	'jname':'<translate id="19">Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%</translate>', | ||||||
|  | 	'hostname':'<translate id="20">This field can not be empty</translate>', | ||||||
|  | 	'ip':'<translate id="21">Write correct ip address, e.g: 10.0.0.2</translate>', | ||||||
|  | 	'rootpass':'<translate id="22">Password can not be less than 3 symbols</translate>', | ||||||
|  | 	'rootpass1':'<translate id="23">Please retype password correctly</translate>', | ||||||
|  | }); | ||||||
|  | </script> | ||||||
|  | <dialog id="jail-settings" class="window-box new"> | ||||||
|  | 	<h1> | ||||||
|  | 		<span class="new"><translate id="24">Create jail</translate></span> | ||||||
|  | 		<span class="edit"><translate id="25">Edit jail</translate></span> | ||||||
|  | 	</h1> | ||||||
|  | 	<h2><translate id="26">Jail Settings</translate></h2> | ||||||
|  | 	<form class="win" method="post" id="jailSettings" onsubmit="return false;"> | ||||||
|  | 		<div class="window-content"> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><translate id="27">Jail name</translate>:</span> | ||||||
|  | 				<input type="text" name="jname" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{2,}" required="required" class="edit-disable" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><translate id="28">Hostname</translate> (FQDN):</span> | ||||||
|  | 				<input type="text" name="host_hostname" value="" required="required" /> | ||||||
|  | <!-- | ||||||
|  | 				<small class="astart-warn">— <translate id="29">available on the jail is not running</translate></small> | ||||||
|  | --> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><translate id="30">IP address</translate>:</span> | ||||||
|  | 				<input type="text" name="ip4_addr" value="DHCP" pattern="^DHCP$|^DHCP[vV]6$|^(?:[0-9]{1,3}\.){3}[0-9]{1,3}(\/[\d]{1,3})?$" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p class="new"> | ||||||
|  | 				<span class="field-name"><translate id="31">Root password</translate>:</span> | ||||||
|  | 				<input type="password" name="user_pw_root" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> | ||||||
|  | 			</p> | ||||||
|  | 			<p class="new"> | ||||||
|  | 				<span class="field-name"><translate id="32">Root password (again)</translate>:</span> | ||||||
|  | 				<input type="password" name="user_pw_root_1" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><translate id="33">Net Interface</translate>:</span> | ||||||
|  | 				<input type="radio" name="interface" value="auto" id="rint0" checked="checked" class="inline"><label for="rint0">auto</label></radio> | ||||||
|  | 				<input type="radio" name="interface" value="lo0" id="rint2" class="inline"><label for="rint2">lo0</label></radio> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><translate id="34">Parameters</translate>:</span> | ||||||
|  | 				<input type="checkbox" name="baserw" id="bwritable-id" /><label for="bwritable-id"> <translate id="35">Base writable</translate>?</label> | ||||||
|  | 				<br /> | ||||||
|  | 				<input type="checkbox" name="mount_ports" id="mount-id" /><label for="mount-id"> <translate id="36">Mount</translate> /usr/ports?</label> | ||||||
|  | 				<br /> | ||||||
|  | 				<input type="checkbox" name="astart" id="astart-id" /><label for="astart-id"> <translate id="37">Autostart jail at system startup</translate></label> | ||||||
|  | 				<br /> | ||||||
|  | 				<input type="checkbox" name="vnet" id="vnet-id" /><label for="vnet-id"> <translate id="38">Virtual network stack (VIMAGE)</translate></label> | ||||||
|  | 			</p> | ||||||
|  | 			<p class="new"> | ||||||
|  | 				<span class="field-name"><translate id="39">Enabled services</translate>:</span> | ||||||
|  | 				<input type="checkbox" name="serv-ftpd" value="ftpd" id="esrv0" class="inline"><label for="esrv0">ftpd</label></checkbox> | ||||||
|  | 				<input type="checkbox" name="serv-sshd" value="sshd" id="esrv1" class="inline"><label for="esrv1">sshd</label></checkbox> | ||||||
|  | 			</p> | ||||||
|  |  | ||||||
|  | 		</div> | ||||||
|  | 	</form> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="<translate id="40">Create</translate>" class="new button ok-but" /> | ||||||
|  | 		<input type="button" value="<translate id="41">Save</translate>" class="edit button ok-but" /> | ||||||
|  | 		<input type="button" value="<translate>Cancel</translate>" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
|  | <?php | ||||||
|  |  | ||||||
|  | /* | ||||||
|  | сложное правило для пароля: цифры, буквы маленькие и заглавные, плюс спецсимволы | ||||||
|  | ^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[^\w\s]).{8,20}$ | ||||||
|  | */ | ||||||
							
								
								
									
										3
									
								
								public/dialogs/_translate.cache/!dont.touch.files
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								public/dialogs/_translate.cache/!dont.touch.files
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,3 @@ | |||||||
|  | This files is cache of translated pages, do not translate it! | ||||||
|  | If you are a translator, please read the documentation on the translation on the website. | ||||||
|  | Thank you. | ||||||
							
								
								
									
										23
									
								
								public/dialogs/_translate.cache/en.bhyve-clone.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								public/dialogs/_translate.cache/en.bhyve-clone.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,23 @@ | |||||||
|  | <script type="text/javascript"> | ||||||
|  | err_messages.add({ | ||||||
|  | 	'vm_name':'<?php echo $this->translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>', | ||||||
|  | }); | ||||||
|  | </script> | ||||||
|  | <dialog id="bhyve-clone" class="window-box new"> | ||||||
|  | 	<h1> | ||||||
|  | 		<span class="new"><?php echo $this->translate('Clone Virtual Machine');?></span> | ||||||
|  | 	</h1> | ||||||
|  | 	<h2><?php echo $this->translate('Cloned Virtual Machine Settings');?></h2> | ||||||
|  | 	<form class="win" method="post" id="bhyveCloneSettings" onsubmit="return false;"> | ||||||
|  | 		<div class="window-content"> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Virtual Machine name');?>:</span> | ||||||
|  | 				<input type="text" name="vm_name" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{1,}" required="required" class="edit-disable" /> | ||||||
|  | 			</p> | ||||||
|  | 		</div> | ||||||
|  | 	</form> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Clone');?>" class="new button ok-but" /> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
							
								
								
									
										102
									
								
								public/dialogs/_translate.cache/en.bhyve-new.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										102
									
								
								public/dialogs/_translate.cache/en.bhyve-new.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,102 @@ | |||||||
|  | <script type="text/javascript"> | ||||||
|  | err_messages.add({ | ||||||
|  | 	'vm_name':'<?php echo $this->translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>', | ||||||
|  | 	'vm_size':'You need type «g» char after numbers', | ||||||
|  | 	'vm_ram':'You need type «g» char after numbers', | ||||||
|  | }); | ||||||
|  | <?php | ||||||
|  | //print_r($this->config->os_types);exit; | ||||||
|  | ?> | ||||||
|  | </script> | ||||||
|  | <dialog id="bhyve-new" class="window-box"> | ||||||
|  | 	<h1> | ||||||
|  | 		<span class="new"><?php echo $this->translate('Create Virtual Machine');?></span> | ||||||
|  | 		<span class="edit"><?php echo $this->translate('Edit Virtual Machine');?></span> | ||||||
|  | 	</h1> | ||||||
|  | 	<h2><?php echo $this->translate('Virtual Machine Settings');?></h2> | ||||||
|  | 	<form class="win" method="post" id="bhyveSettings" onsubmit="return false;"> | ||||||
|  | 		<div class="window-content"> | ||||||
|  | 			<p class="new"> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM OS profile');?>:</span> | ||||||
|  | 				<select name="vm_os_profile" onchange="clonos.onChangeOsProfile(this,event);"> | ||||||
|  | 					<?php echo $this->config->os_types_create(); ?> | ||||||
|  | 				</select> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Virtual Machine name');?>:</span> | ||||||
|  | 				<input type="text" name="vm_name" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{1,}" required="required" class="edit-disable" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p class="new"> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM template (cpu, ram, hdd)');?>:</span> | ||||||
|  | 				<select name="vm_packages" onchange="clonos.onChangePkgTemplate(this,event);"> | ||||||
|  | 					<?php $vm_res=$this->config->vm_packages_list(); echo $vm_res['html']; ?> | ||||||
|  | 				</select> | ||||||
|  | 				<script type="text/javascript">clonos.vm_packages_new_min_id=<?php echo $vm_res['min_id']; ?>;</script> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM CPUs');?>:</span> | ||||||
|  | 				<span class="range"> | ||||||
|  | 					<input type="range" name="vm_cpus" class="vHorizon" min="1" max="16" value="1" style="margin:6px 0;" id="rngCpus" oninput="rngCpusShow.value=rngCpus.value" /> | ||||||
|  | 					<input type="text" disabled="disabled" id="rngCpusShow" value="1" name="vm_cpus_show" /> | ||||||
|  | 					<!-- input type="text" name="vm_cpus" value="" pattern="[0-9]+" placeholder="1" required="required" / --> | ||||||
|  | 				</span> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM RAM');?>:</span> | ||||||
|  | <!--				<input type="text" name="vm_ram" value="" pattern="^[0-9]+\s*(g|gb|mb|m|t|tb)$" placeholder="1g" required="required" /> --> | ||||||
|  | 				<span class="range"> | ||||||
|  | 					<input type="range" name="vm_ram" class="vHorizon" min="1" max="64" value="1" style="margin:6px 0;" id="rngRam" oninput="rngRamShow.value=rngRam.value+'g'" /> | ||||||
|  | 					<input type="text" disabled="disabled" id="rngRamShow" value="1" name="vm_ram_show" /> | ||||||
|  | 				</span> | ||||||
|  | 			</p> | ||||||
|  | 			<p class="new"> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM Image size');?>:</span> | ||||||
|  | <!--				<input type="text" name="vm_size" value="" pattern="^[0-9]+(g|gb|t|tb)$" placeholder="10g" required="required" class="edit-disable" /> --> | ||||||
|  | 				<span class="range"> | ||||||
|  | 					<input type="range" name="vm_imgsize" class="vHorizon" min="20" max="866" value="20" style="margin:6px 0;" id="rngImgsize" oninput="rngImgsizeShow.value=rngImgsize.value+'g'" /> | ||||||
|  | 					<input type="text" disabled="disabled" id="rngImgsizeShow" value="1" name="vm_imgsize_show" /> | ||||||
|  | 				</span> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Attached boot ISO image');?>:</span> | ||||||
|  | 				<select name="vm_iso_image"> | ||||||
|  | 					<option value="-2"></option> | ||||||
|  | 					<option value="-1" selected>Profile default ISO</option> | ||||||
|  | 					<?php echo $this->media_iso_list_html(); ?> | ||||||
|  | 				</select> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VNC IP address');?>:</span> | ||||||
|  | 				<input type="radio" name="bhyve_vnc_tcp_bind" value="127.0.0.1" id="vncip0" checked="checked" class="inline"><label for="vncip0">127.0.0.1</label></radio> | ||||||
|  | 				<input type="radio" name="bhyve_vnc_tcp_bind" value="0.0.0.0" id="vncip1" class="inline"><label for="vncip1">0.0.0.0</label></radio> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VNC PORT');?>:</span> | ||||||
|  | 				<input type="text" name="vm_vnc_port" value="" placeholder="0" maxlength="5" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VNC Password');?>:</span> | ||||||
|  | 				<input type="password" name="vm_vnc_password" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> <small>— <?php echo $this->translate('use to log in VNC console');?></small> | ||||||
|  | 			</p> | ||||||
|  | <!--			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('CD-ROM ISO');?>:</span> | ||||||
|  | 				<select name="cd-rom"> | ||||||
|  | 					<option value="profile">profile</option> | ||||||
|  | 				</select> | ||||||
|  | 			</p> | ||||||
|  | -->			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Net Interface');?>:</span> | ||||||
|  | 				<!-- <input type="radio" name="interface" value="auto" id="rint0" checked="checked" class="inline"><label for="rint0">auto</label></radio> --> | ||||||
|  | 				<select name="interface"> | ||||||
|  | 					<option value="auto">auto</option> | ||||||
|  | <?php echo $this->get_interfaces_html(); ?> | ||||||
|  | 				</select> | ||||||
|  | 			</p> | ||||||
|  | 		</div> | ||||||
|  | 	</form> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Create');?>" class="new button ok-but" /> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Save');?>" class="edit button ok-but" /> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
							
								
								
									
										84
									
								
								public/dialogs/_translate.cache/en.bhyve-obtain.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										84
									
								
								public/dialogs/_translate.cache/en.bhyve-obtain.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,84 @@ | |||||||
|  | <dialog id="bhyve-obtain" class="window-box"> | ||||||
|  | 	<h1><?php echo $this->translate('Create Virtual Machine from Library');?></h1> | ||||||
|  | 	<h2><?php echo $this->translate('Virtual Machine Settings');?></h2> | ||||||
|  | 	<form class="win" method="post" id="bhyveObtSettings" onsubmit="return false;"> | ||||||
|  | 		<div class="window-content"> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM OS profile');?>:</span> | ||||||
|  | 				<select name="vm_os_profile" onchange="clonos.onChangeOsProfile(this,event);"> | ||||||
|  | <?php echo $this->config->os_types_create('obtain'); ?> | ||||||
|  | 				</select> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Virtual Machine name');?>:</span> | ||||||
|  | 				<input type="text" name="vm_name" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{1,}" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM template (cpu, ram, hdd)');?>:</span> | ||||||
|  | 				<select name="vm_packages" onchange="clonos.onChangePkgTemplate(this,event);"> | ||||||
|  | <?php $vm_res=$this->config->vm_packages_list(); echo $vm_res['html']; ?> | ||||||
|  | 				</select> | ||||||
|  | 				<script type="text/javascript">clonos.vm_packages_obtain_min_id=<?php echo $vm_res['min_id']; ?>;</script> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM CPUs');?>:</span> | ||||||
|  | 				<span class="range"> | ||||||
|  | 					<input type="range" name="vm_cpus" class="vHorizon" min="1" max="16" value="1" style="margin:6px 0;" id="rngCpus1" oninput="rngCpusShow1.value=rngCpus1.value" /> | ||||||
|  | 					<input type="text" disabled="disabled" id="rngCpusShow1" value="1" name="vm_cpus_show" /> | ||||||
|  | 				</span> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM RAM');?>:</span> | ||||||
|  | 				<!-- <input type="text" name="vm_ram" value="" pattern="^[0-9]+(g|gb|mb|m)$" placeholder="1g" required="required" /> --> | ||||||
|  | 				<span class="range"> | ||||||
|  | 					<input type="range" name="vm_ram" class="vHorizon" min="1" max="64" value="1" style="margin:6px 0;" id="rngRam1" oninput="rngRamShow1.value=rngRam1.value+'g'" /> | ||||||
|  | 					<input type="text" disabled="disabled" id="rngRamShow1" value="1" name="vm_ram_show" /> | ||||||
|  | 				</span> | ||||||
|  |  | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM Image size');?>:</span> | ||||||
|  | 				<!-- <input type="text" name="vm_size" value="" pattern="^[0-9]+(g|gb|mb|m|t|tb)$" placeholder="10g" required="required" /> --> | ||||||
|  | 				<span class="range"> | ||||||
|  | 					<input type="range" name="vm_size" class="vHorizon" min="20" max="866" value="20" style="margin:6px 0;" id="rngImgsize1" oninput="rngImgsizeShow1.value=rngImgsize1.value+'g'" /> | ||||||
|  | 					<input type="text" disabled="disabled" id="rngImgsizeShow1" value="1" name="vm_imgsize_show" /> | ||||||
|  | 				</span> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('IP address');?>:</span> | ||||||
|  | 				<input type="text" name="ip4_addr" value="DHCP" pattern="^DHCP$|^DHCP[vV]6$|^(?:[0-9]{1,3}\.){3}[0-9]{1,3}(\/[\d]{1,3})?$" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Gateway');?>:</span> | ||||||
|  | 				<input type="text" name="gateway" value="10.0.0.1" pattern="^(?:[0-9]{1,3}\.){3}[0-9]{1,3}(\/[\d]{1,3})?$" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Mask');?>:</span> | ||||||
|  | 				<input type="text" name="mask" value="255.255.255.0" pattern="^(?:[0-9]{1,3}\.){3}[0-9]{1,3}(\/[\d]{1,3})?$" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM Password');?>:</span> | ||||||
|  | 				<input type="password" name="vm_password" value="cbsd" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> <small>— <?php echo $this->translate('default is');?>: «cbsd»</small> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('USER Password');?>:</span> | ||||||
|  | 				<input type="password" name="user_password" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> <small>— <?php echo $this->translate('напиши осознанный текст');?></small> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Authkey');?>:</span> | ||||||
|  | 				<select name="vm_authkey"> | ||||||
|  | <?php echo $this->config->authkeys_list(); ?> | ||||||
|  | 				</select> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VNC Password');?>:</span> | ||||||
|  | 				<input type="password" name="vnc_password" value="cbsd" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> <small>— <?php echo $this->translate('use to log in VNC. Default is');?>: cbsd</small> | ||||||
|  | 			</p> | ||||||
|  | 		</div> | ||||||
|  | 	</form> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Create');?>" class="button ok-but" /> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
|  | <?php | ||||||
							
								
								
									
										26
									
								
								public/dialogs/_translate.cache/en.bhyve-rename.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								public/dialogs/_translate.cache/en.bhyve-rename.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,26 @@ | |||||||
|  | <script type="text/javascript"> | ||||||
|  | err_messages.add({ | ||||||
|  | 	'jname':'<?php echo $this->translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>', | ||||||
|  | }); | ||||||
|  | </script> | ||||||
|  | <dialog id="bhyve-rename" class="window-box new"> | ||||||
|  | 	<h1> | ||||||
|  | 		<span class="new"><?php echo $this->translate('Rename virtual machine');?></span> | ||||||
|  | 	</h1> | ||||||
|  | 	<h2><?php echo $this->translate('Renamed Virtual Machine Settings');?></h2> | ||||||
|  | 	<form class="win" method="post" id="bhyveRenameSettings" onsubmit="return false;"> | ||||||
|  | 		<div class="window-content"> | ||||||
|  | 			<p class="warning" style="width:400px;"> | ||||||
|  | 				<?php echo $this->translate('@rename_warning@'); ?> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM name');?>:</span> | ||||||
|  | 				<input type="text" name="jname" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{2,}" required="required" class="edit-disable" /> | ||||||
|  | 			</p> | ||||||
|  | 		</div> | ||||||
|  | 	</form> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Rename');?>" class="new button ok-but" /> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
							
								
								
									
										36
									
								
								public/dialogs/_translate.cache/en.jail-clone.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								public/dialogs/_translate.cache/en.jail-clone.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,36 @@ | |||||||
|  | <script type="text/javascript"> | ||||||
|  | err_messages.add({ | ||||||
|  | 	'jname':'<?php echo $this->translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>', | ||||||
|  | 	'host_hostname':'<?php echo $this->translate("This field can not be empty");?>', | ||||||
|  | 	'ip':'<?php echo $this->translate("Write correct ip address, e.g: 10.0.0.2");?>', | ||||||
|  | }); | ||||||
|  | </script> | ||||||
|  | <dialog id="jail-clone" class="window-box new"> | ||||||
|  | 	<h1> | ||||||
|  | 		<span class="new"><?php echo $this->translate('Clone jail');?></span> | ||||||
|  | 	</h1> | ||||||
|  | 	<h2><?php echo $this->translate('Cloned Jail Settings');?></h2> | ||||||
|  | 	<form class="win" method="post" id="jailCloneSettings" onsubmit="return false;"> | ||||||
|  | 		<div class="window-content"> | ||||||
|  | 			<p class="warning" style="width:400px;"> | ||||||
|  | 				<?php echo $this->translate('@clone_warning@'); ?> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Jail name');?>:</span> | ||||||
|  | 				<input type="text" name="jname" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{2,}" required="required" class="edit-disable" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Hostname');?> (FQDN):</span> | ||||||
|  | 				<input type="text" name="host_hostname" value="" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('IP address');?>:</span> | ||||||
|  | 				<input type="text" name="ip4_addr" value="DHCP" pattern="^DHCP$|^DHCP[vV]6$|^(?:[0-9]{1,3}\.){3}[0-9]{1,3}(\/[\d]{1,3})?$" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 		</div> | ||||||
|  | 	</form> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Clone');?>" class="new button ok-but" /> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
							
								
								
									
										35
									
								
								public/dialogs/_translate.cache/en.jail-import.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								public/dialogs/_translate.cache/en.jail-import.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,35 @@ | |||||||
|  | <script type="text/javascript"> | ||||||
|  | err_messages.add({ | ||||||
|  | 	'jname':'<?php echo $this->translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>', | ||||||
|  | }); | ||||||
|  | </script> | ||||||
|  | <dialog id="jail-import" class="window-box new"> | ||||||
|  | 	<h1> | ||||||
|  | 		<span class="new"><?php echo $this->translate('Import jail');?></span> | ||||||
|  | 		<span class="edit"><?php echo $this->translate('Edit jail');?></span> | ||||||
|  | 	</h1> | ||||||
|  | 	<h2><?php echo $this->translate('Jail Import');?></h2> | ||||||
|  | 	<form class="win" method="post" id="jailImport" onsubmit="return false;"> | ||||||
|  | 		<div class="window-content"> | ||||||
|  | 			<p> | ||||||
|  | 				<!-- D&D Markup --> | ||||||
|  | 				<div id="drag-and-drop-zone" class="uploader"> | ||||||
|  | 				  <div>Drag & Drop Files Here</div> | ||||||
|  | 				  <div class="or">-or-</div> | ||||||
|  | 				  <div class="browser"> | ||||||
|  | 				   <label> | ||||||
|  | 					 <span>Click to open the file Browser</span> | ||||||
|  | 					 <input type="file" name="jimp_files[]" multiple="multiple" title='Click to add Files'> | ||||||
|  | 				   </label> | ||||||
|  | 				  </div> | ||||||
|  | 				</div> | ||||||
|  | 				<div class="uploader-progress"></div> | ||||||
|  | 				<!-- /D&D Markup --> | ||||||
|  | 			</p> | ||||||
|  | 		</div> | ||||||
|  | 	</form> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
|  | <script type="text/javascript">clonos.fileUploadPrepare();</script> | ||||||
							
								
								
									
										36
									
								
								public/dialogs/_translate.cache/en.jail-rename.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								public/dialogs/_translate.cache/en.jail-rename.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,36 @@ | |||||||
|  | <script type="text/javascript"> | ||||||
|  | err_messages.add({ | ||||||
|  | 	'jname':'<?php echo $this->translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>', | ||||||
|  | 	'hostname':'<?php echo $this->translate("This field can not be empty");?>', | ||||||
|  | 	'ip':'<?php echo $this->translate("Write correct ip address, e.g: 10.0.0.2");?>', | ||||||
|  | }); | ||||||
|  | </script> | ||||||
|  | <dialog id="jail-rename" class="window-box new"> | ||||||
|  | 	<h1> | ||||||
|  | 		<span class="new"><?php echo $this->translate('Rename jail');?></span> | ||||||
|  | 	</h1> | ||||||
|  | 	<h2><?php echo $this->translate('Renamed Jail Settings');?></h2> | ||||||
|  | 	<form class="win" method="post" id="jailRenameSettings" onsubmit="return false;"> | ||||||
|  | 		<div class="window-content"> | ||||||
|  | 			<p class="warning" style="width:400px;"> | ||||||
|  | 				<?php echo $this->translate('@rename_warning@'); ?> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Jail name');?>:</span> | ||||||
|  | 				<input type="text" name="jname" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{2,}" required="required" class="edit-disable" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Hostname');?> (FQDN):</span> | ||||||
|  | 				<input type="text" name="host_hostname" value="" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('IP address');?>:</span> | ||||||
|  | 				<input type="text" name="ip4_addr" value="DHCP" pattern="^DHCP$|^DHCP[vV]6$|^(?:[0-9]{1,3}\.){3}[0-9]{1,3}(\/[\d]{1,3})?$" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 		</div> | ||||||
|  | 	</form> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Rename');?>" class="new button ok-but" /> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
| @@ -0,0 +1,10 @@ | |||||||
|  | <div id="config-menu" style="display:none;"> | ||||||
|  | 	<span class="icon-cog menu-cog"></span> | ||||||
|  | 	<ul> | ||||||
|  | 		<li class="icon-edit" id="jddm-rename"> <?php echo $this->translate('rename');?></li> | ||||||
|  | 		<li class="icon-pencil" id="jddm-edit"> <?php echo $this->translate('edit');?></li> | ||||||
|  | 		<li class="icon-docs" id="jddm-clone"> <?php echo $this->translate('clone');?></li> | ||||||
|  | 		<li class="icon-gift" id="jddm-export"> <?php echo $this->translate('export');?></li> | ||||||
|  | 		<li class="icon-cubes" id="jddm-helpers"> <?php echo $this->translate('helpers');?></li> | ||||||
|  | 	</ul> | ||||||
|  | </div> | ||||||
							
								
								
									
										75
									
								
								public/dialogs/_translate.cache/en.jail-settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										75
									
								
								public/dialogs/_translate.cache/en.jail-settings.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,75 @@ | |||||||
|  | <script type="text/javascript"> | ||||||
|  | err_messages.add({ | ||||||
|  | 	'jname':'Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%', | ||||||
|  | 	'hostname':'This field can not be empty', | ||||||
|  | 	'ip':'Write correct ip address, e.g: 10.0.0.2', | ||||||
|  | 	'rootpass':'Password can not be less than 3 symbols', | ||||||
|  | 	'rootpass1':'Please retype password correctly', | ||||||
|  | }); | ||||||
|  | </script> | ||||||
|  | <dialog id="jail-settings" class="window-box new"> | ||||||
|  | 	<h1> | ||||||
|  | 		<span class="new">Create jail</span> | ||||||
|  | 		<span class="edit">Edit jail</span> | ||||||
|  | 	</h1> | ||||||
|  | 	<h2>Jail Settings</h2> | ||||||
|  | 	<form class="win" method="post" id="jailSettings" onsubmit="return false;"> | ||||||
|  | 		<div class="window-content"> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name">Jail name:</span> | ||||||
|  | 				<input type="text" name="jname" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{2,}" required="required" class="edit-disable" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name">Hostname (FQDN):</span> | ||||||
|  | 				<input type="text" name="host_hostname" value="" required="required" /> | ||||||
|  | <!-- | ||||||
|  | 				<small class="astart-warn">— available on the jail is not running</small> | ||||||
|  | --> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name">IP address:</span> | ||||||
|  | 				<input type="text" name="ip4_addr" value="DHCP" pattern="^DHCP$|^DHCP[vV]6$|^(?:[0-9]{1,3}\.){3}[0-9]{1,3}(\/[\d]{1,3})?$" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p class="new"> | ||||||
|  | 				<span class="field-name">Root password:</span> | ||||||
|  | 				<input type="password" name="user_pw_root" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> | ||||||
|  | 			</p> | ||||||
|  | 			<p class="new"> | ||||||
|  | 				<span class="field-name">Root password (again):</span> | ||||||
|  | 				<input type="password" name="user_pw_root_1" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name">Net Interface:</span> | ||||||
|  | 				<input type="radio" name="interface" value="auto" id="rint0" checked="checked" class="inline"><label for="rint0">auto</label></radio> | ||||||
|  | 				<input type="radio" name="interface" value="lo0" id="rint2" class="inline"><label for="rint2">lo0</label></radio> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name">Parameters:</span> | ||||||
|  | 				<input type="checkbox" name="baserw" id="bwritable-id" /><label for="bwritable-id"> Base writable?</label> | ||||||
|  | 				<br /> | ||||||
|  | 				<input type="checkbox" name="mount_ports" id="mount-id" /><label for="mount-id"> Mount /usr/ports?</label> | ||||||
|  | 				<br /> | ||||||
|  | 				<input type="checkbox" name="astart" id="astart-id" /><label for="astart-id"> Autostart jail at system startup</label> | ||||||
|  | 				<br /> | ||||||
|  | 				<input type="checkbox" name="vnet" id="vnet-id" /><label for="vnet-id"> Virtual network stack (VIMAGE)</label> | ||||||
|  | 			</p> | ||||||
|  | 			<p class="new"> | ||||||
|  | 				<span class="field-name">Enabled services:</span> | ||||||
|  | 				<input type="checkbox" name="serv-ftpd" value="ftpd" id="esrv0" class="inline"><label for="esrv0">ftpd</label></checkbox> | ||||||
|  | 				<input type="checkbox" name="serv-sshd" value="sshd" id="esrv1" class="inline"><label for="esrv1">sshd</label></checkbox> | ||||||
|  | 			</p> | ||||||
|  |  | ||||||
|  | 		</div> | ||||||
|  | 	</form> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="Create" class="new button ok-but" /> | ||||||
|  | 		<input type="button" value="Save" class="edit button ok-but" /> | ||||||
|  | 		<input type="button" value="Cancel" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
|  | <?php | ||||||
|  |  | ||||||
|  | /* | ||||||
|  | сложное правило для пароля: цифры, буквы маленькие и заглавные, плюс спецсимволы | ||||||
|  | ^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[^\w\s]).{8,20}$ | ||||||
|  | */ | ||||||
							
								
								
									
										9
									
								
								public/dialogs/_translate.cache/en.tasklog.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								public/dialogs/_translate.cache/en.tasklog.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | |||||||
|  | <dialog id="tasklog" class="window-box tasklog"> | ||||||
|  | 	<h1><?php echo $this->translate('Task log');?></h1> | ||||||
|  | 	<div class="window-content"> | ||||||
|  | 		Task log here… | ||||||
|  | 	</div> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Close');?>" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
							
								
								
									
										19
									
								
								public/dialogs/_translate.cache/en.vnc-bhyve.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								public/dialogs/_translate.cache/en.vnc-bhyve.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,19 @@ | |||||||
|  | <dialog id="vnc"> | ||||||
|  | 	<div class="panel" style="text-align:right;"> | ||||||
|  | 		<span onclick="clonos.dialogFullscreen(this);" style="font-size:130%;cursor:pointer;" | ||||||
|  | 			<span class="dialog-fullscreen"></span> | ||||||
|  | 		</span> | ||||||
|  | 		<span onclick="clonos.dialogClose();" style="font-size:150%;font-weight:bold;cursor:pointer;"> | ||||||
|  | 			<span class="dialog-close"></span> | ||||||
|  | 		</span> | ||||||
|  | 	</div> | ||||||
|  | 	<div class="vnc-wait"> | ||||||
|  | 		<div class="outer"> | ||||||
|  | 			<div class="inner"> | ||||||
|  | 				<span class="icon-spin5 animate-spin"></span><?php echo $this->translate('Please, wait for initialize Virtual Machine');?> | ||||||
|  | 				<br /><small style="display: block;font-size: small;margin-top: 20px;"><?php echo $this->translate('You can click here, or wait');?>: <span id="vnc-countdown"><?php echo $this->translate('some time');?></span></small> | ||||||
|  | 			</div> | ||||||
|  | 		</div> | ||||||
|  | 	</div> | ||||||
|  | 	<iframe src="about:blank" id="vnc-iframe" border="0" width="1026" height="802"></iframe> | ||||||
|  | </dialog> | ||||||
							
								
								
									
										9
									
								
								public/dialogs/_translate.cache/en.vnc.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								public/dialogs/_translate.cache/en.vnc.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | |||||||
|  | <dialog id="vnc"> | ||||||
|  | 	<div class="panel" style="text-align:right;"> | ||||||
|  | 		<span onclick="clonos.dialogClose();" style="font-size:150%;font-weight:bold;cursor:pointer;"> | ||||||
|  | 			<span class="dialog-fullscreen"></span> | ||||||
|  | 			<span class="dialog-close"></span> | ||||||
|  | 		</span> | ||||||
|  | 	</div> | ||||||
|  | 	<iframe src="about:blank" id="vnc-iframe" border="0" width="800" height="600"></iframe> <!-- 760 436 --> | ||||||
|  | </dialog> | ||||||
							
								
								
									
										23
									
								
								public/dialogs/_translate.cache/ru.bhyve-clone.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								public/dialogs/_translate.cache/ru.bhyve-clone.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,23 @@ | |||||||
|  | <script type="text/javascript"> | ||||||
|  | err_messages.add({ | ||||||
|  | 	'vm_name':'<?php echo $this->translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>', | ||||||
|  | }); | ||||||
|  | </script> | ||||||
|  | <dialog id="bhyve-clone" class="window-box new"> | ||||||
|  | 	<h1> | ||||||
|  | 		<span class="new"><?php echo $this->translate('Clone Virtual Machine');?></span> | ||||||
|  | 	</h1> | ||||||
|  | 	<h2><?php echo $this->translate('Cloned Virtual Machine Settings');?></h2> | ||||||
|  | 	<form class="win" method="post" id="bhyveCloneSettings" onsubmit="return false;"> | ||||||
|  | 		<div class="window-content"> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Virtual Machine name');?>:</span> | ||||||
|  | 				<input type="text" name="vm_name" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{1,}" required="required" class="edit-disable" /> | ||||||
|  | 			</p> | ||||||
|  | 		</div> | ||||||
|  | 	</form> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Clone');?>" class="new button ok-but" /> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
							
								
								
									
										102
									
								
								public/dialogs/_translate.cache/ru.bhyve-new.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										102
									
								
								public/dialogs/_translate.cache/ru.bhyve-new.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,102 @@ | |||||||
|  | <script type="text/javascript"> | ||||||
|  | err_messages.add({ | ||||||
|  | 	'vm_name':'<?php echo $this->translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>', | ||||||
|  | 	'vm_size':'You need type «g» char after numbers', | ||||||
|  | 	'vm_ram':'You need type «g» char after numbers', | ||||||
|  | }); | ||||||
|  | <?php | ||||||
|  | //print_r($this->config->os_types);exit; | ||||||
|  | ?> | ||||||
|  | </script> | ||||||
|  | <dialog id="bhyve-new" class="window-box"> | ||||||
|  | 	<h1> | ||||||
|  | 		<span class="new"><?php echo $this->translate('Create Virtual Machine');?></span> | ||||||
|  | 		<span class="edit"><?php echo $this->translate('Edit Virtual Machine');?></span> | ||||||
|  | 	</h1> | ||||||
|  | 	<h2><?php echo $this->translate('Virtual Machine Settings');?></h2> | ||||||
|  | 	<form class="win" method="post" id="bhyveSettings" onsubmit="return false;"> | ||||||
|  | 		<div class="window-content"> | ||||||
|  | 			<p class="new"> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM OS profile');?>:</span> | ||||||
|  | 				<select name="vm_os_profile" onchange="clonos.onChangeOsProfile(this,event);"> | ||||||
|  | 					<?php echo $this->config->os_types_create(); ?> | ||||||
|  | 				</select> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Virtual Machine name');?>:</span> | ||||||
|  | 				<input type="text" name="vm_name" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{1,}" required="required" class="edit-disable" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p class="new"> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM template (cpu, ram, hdd)');?>:</span> | ||||||
|  | 				<select name="vm_packages" onchange="clonos.onChangePkgTemplate(this,event);"> | ||||||
|  | 					<?php $vm_res=$this->config->vm_packages_list(); echo $vm_res['html']; ?> | ||||||
|  | 				</select> | ||||||
|  | 				<script type="text/javascript">clonos.vm_packages_new_min_id=<?php echo $vm_res['min_id']; ?>;</script> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM CPUs');?>:</span> | ||||||
|  | 				<span class="range"> | ||||||
|  | 					<input type="range" name="vm_cpus" class="vHorizon" min="1" max="16" value="1" style="margin:6px 0;" id="rngCpus" oninput="rngCpusShow.value=rngCpus.value" /> | ||||||
|  | 					<input type="text" disabled="disabled" id="rngCpusShow" value="1" name="vm_cpus_show" /> | ||||||
|  | 					<!-- input type="text" name="vm_cpus" value="" pattern="[0-9]+" placeholder="1" required="required" / --> | ||||||
|  | 				</span> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM RAM');?>:</span> | ||||||
|  | <!--				<input type="text" name="vm_ram" value="" pattern="^[0-9]+\s*(g|gb|mb|m|t|tb)$" placeholder="1g" required="required" /> --> | ||||||
|  | 				<span class="range"> | ||||||
|  | 					<input type="range" name="vm_ram" class="vHorizon" min="1" max="64" value="1" style="margin:6px 0;" id="rngRam" oninput="rngRamShow.value=rngRam.value+'g'" /> | ||||||
|  | 					<input type="text" disabled="disabled" id="rngRamShow" value="1" name="vm_ram_show" /> | ||||||
|  | 				</span> | ||||||
|  | 			</p> | ||||||
|  | 			<p class="new"> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM Image size');?>:</span> | ||||||
|  | <!--				<input type="text" name="vm_size" value="" pattern="^[0-9]+(g|gb|t|tb)$" placeholder="10g" required="required" class="edit-disable" /> --> | ||||||
|  | 				<span class="range"> | ||||||
|  | 					<input type="range" name="vm_imgsize" class="vHorizon" min="20" max="866" value="20" style="margin:6px 0;" id="rngImgsize" oninput="rngImgsizeShow.value=rngImgsize.value+'g'" /> | ||||||
|  | 					<input type="text" disabled="disabled" id="rngImgsizeShow" value="1" name="vm_imgsize_show" /> | ||||||
|  | 				</span> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Attached boot ISO image');?>:</span> | ||||||
|  | 				<select name="vm_iso_image"> | ||||||
|  | 					<option value="-2"></option> | ||||||
|  | 					<option value="-1" selected>Profile default ISO</option> | ||||||
|  | 					<?php echo $this->media_iso_list_html(); ?> | ||||||
|  | 				</select> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VNC IP address');?>:</span> | ||||||
|  | 				<input type="radio" name="bhyve_vnc_tcp_bind" value="127.0.0.1" id="vncip0" checked="checked" class="inline"><label for="vncip0">127.0.0.1</label></radio> | ||||||
|  | 				<input type="radio" name="bhyve_vnc_tcp_bind" value="0.0.0.0" id="vncip1" class="inline"><label for="vncip1">0.0.0.0</label></radio> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VNC PORT');?>:</span> | ||||||
|  | 				<input type="text" name="vm_vnc_port" value="" placeholder="0" maxlength="5" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VNC Password');?>:</span> | ||||||
|  | 				<input type="password" name="vm_vnc_password" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> <small>— <?php echo $this->translate('use to log in VNC console');?></small> | ||||||
|  | 			</p> | ||||||
|  | <!--			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('CD-ROM ISO');?>:</span> | ||||||
|  | 				<select name="cd-rom"> | ||||||
|  | 					<option value="profile">profile</option> | ||||||
|  | 				</select> | ||||||
|  | 			</p> | ||||||
|  | -->			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Net Interface');?>:</span> | ||||||
|  | 				<!-- <input type="radio" name="interface" value="auto" id="rint0" checked="checked" class="inline"><label for="rint0">auto</label></radio> --> | ||||||
|  | 				<select name="interface"> | ||||||
|  | 					<option value="auto">auto</option> | ||||||
|  | <?php echo $this->get_interfaces_html(); ?> | ||||||
|  | 				</select> | ||||||
|  | 			</p> | ||||||
|  | 		</div> | ||||||
|  | 	</form> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Create');?>" class="new button ok-but" /> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Save');?>" class="edit button ok-but" /> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
							
								
								
									
										84
									
								
								public/dialogs/_translate.cache/ru.bhyve-obtain.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										84
									
								
								public/dialogs/_translate.cache/ru.bhyve-obtain.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,84 @@ | |||||||
|  | <dialog id="bhyve-obtain" class="window-box"> | ||||||
|  | 	<h1><?php echo $this->translate('Create Virtual Machine from Library');?></h1> | ||||||
|  | 	<h2><?php echo $this->translate('Virtual Machine Settings');?></h2> | ||||||
|  | 	<form class="win" method="post" id="bhyveObtSettings" onsubmit="return false;"> | ||||||
|  | 		<div class="window-content"> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM OS profile');?>:</span> | ||||||
|  | 				<select name="vm_os_profile" onchange="clonos.onChangeOsProfile(this,event);"> | ||||||
|  | <?php echo $this->config->os_types_create('obtain'); ?> | ||||||
|  | 				</select> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Virtual Machine name');?>:</span> | ||||||
|  | 				<input type="text" name="vm_name" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{1,}" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM template (cpu, ram, hdd)');?>:</span> | ||||||
|  | 				<select name="vm_packages" onchange="clonos.onChangePkgTemplate(this,event);"> | ||||||
|  | <?php $vm_res=$this->config->vm_packages_list(); echo $vm_res['html']; ?> | ||||||
|  | 				</select> | ||||||
|  | 				<script type="text/javascript">clonos.vm_packages_obtain_min_id=<?php echo $vm_res['min_id']; ?>;</script> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM CPUs');?>:</span> | ||||||
|  | 				<span class="range"> | ||||||
|  | 					<input type="range" name="vm_cpus" class="vHorizon" min="1" max="16" value="1" style="margin:6px 0;" id="rngCpus1" oninput="rngCpusShow1.value=rngCpus1.value" /> | ||||||
|  | 					<input type="text" disabled="disabled" id="rngCpusShow1" value="1" name="vm_cpus_show" /> | ||||||
|  | 				</span> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM RAM');?>:</span> | ||||||
|  | 				<!-- <input type="text" name="vm_ram" value="" pattern="^[0-9]+(g|gb|mb|m)$" placeholder="1g" required="required" /> --> | ||||||
|  | 				<span class="range"> | ||||||
|  | 					<input type="range" name="vm_ram" class="vHorizon" min="1" max="64" value="1" style="margin:6px 0;" id="rngRam1" oninput="rngRamShow1.value=rngRam1.value+'g'" /> | ||||||
|  | 					<input type="text" disabled="disabled" id="rngRamShow1" value="1" name="vm_ram_show" /> | ||||||
|  | 				</span> | ||||||
|  |  | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM Image size');?>:</span> | ||||||
|  | 				<!-- <input type="text" name="vm_size" value="" pattern="^[0-9]+(g|gb|mb|m|t|tb)$" placeholder="10g" required="required" /> --> | ||||||
|  | 				<span class="range"> | ||||||
|  | 					<input type="range" name="vm_size" class="vHorizon" min="20" max="866" value="20" style="margin:6px 0;" id="rngImgsize1" oninput="rngImgsizeShow1.value=rngImgsize1.value+'g'" /> | ||||||
|  | 					<input type="text" disabled="disabled" id="rngImgsizeShow1" value="1" name="vm_imgsize_show" /> | ||||||
|  | 				</span> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('IP address');?>:</span> | ||||||
|  | 				<input type="text" name="ip4_addr" value="DHCP" pattern="^DHCP$|^DHCP[vV]6$|^(?:[0-9]{1,3}\.){3}[0-9]{1,3}(\/[\d]{1,3})?$" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Gateway');?>:</span> | ||||||
|  | 				<input type="text" name="gateway" value="10.0.0.1" pattern="^(?:[0-9]{1,3}\.){3}[0-9]{1,3}(\/[\d]{1,3})?$" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Mask');?>:</span> | ||||||
|  | 				<input type="text" name="mask" value="255.255.255.0" pattern="^(?:[0-9]{1,3}\.){3}[0-9]{1,3}(\/[\d]{1,3})?$" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM Password');?>:</span> | ||||||
|  | 				<input type="password" name="vm_password" value="cbsd" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> <small>— <?php echo $this->translate('default is');?>: «cbsd»</small> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('USER Password');?>:</span> | ||||||
|  | 				<input type="password" name="user_password" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> <small>— <?php echo $this->translate('напиши осознанный текст');?></small> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Authkey');?>:</span> | ||||||
|  | 				<select name="vm_authkey"> | ||||||
|  | <?php echo $this->config->authkeys_list(); ?> | ||||||
|  | 				</select> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VNC Password');?>:</span> | ||||||
|  | 				<input type="password" name="vnc_password" value="cbsd" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> <small>— <?php echo $this->translate('use to log in VNC. Default is');?>: cbsd</small> | ||||||
|  | 			</p> | ||||||
|  | 		</div> | ||||||
|  | 	</form> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Create');?>" class="button ok-but" /> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
|  | <?php | ||||||
							
								
								
									
										26
									
								
								public/dialogs/_translate.cache/ru.bhyve-rename.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								public/dialogs/_translate.cache/ru.bhyve-rename.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,26 @@ | |||||||
|  | <script type="text/javascript"> | ||||||
|  | err_messages.add({ | ||||||
|  | 	'jname':'<?php echo $this->translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>', | ||||||
|  | }); | ||||||
|  | </script> | ||||||
|  | <dialog id="bhyve-rename" class="window-box new"> | ||||||
|  | 	<h1> | ||||||
|  | 		<span class="new"><?php echo $this->translate('Rename virtual machine');?></span> | ||||||
|  | 	</h1> | ||||||
|  | 	<h2><?php echo $this->translate('Renamed Virtual Machine Settings');?></h2> | ||||||
|  | 	<form class="win" method="post" id="bhyveRenameSettings" onsubmit="return false;"> | ||||||
|  | 		<div class="window-content"> | ||||||
|  | 			<p class="warning" style="width:400px;"> | ||||||
|  | 				<?php echo $this->translate('@rename_warning@'); ?> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('VM name');?>:</span> | ||||||
|  | 				<input type="text" name="jname" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{2,}" required="required" class="edit-disable" /> | ||||||
|  | 			</p> | ||||||
|  | 		</div> | ||||||
|  | 	</form> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Rename');?>" class="new button ok-but" /> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
							
								
								
									
										36
									
								
								public/dialogs/_translate.cache/ru.jail-clone.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								public/dialogs/_translate.cache/ru.jail-clone.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,36 @@ | |||||||
|  | <script type="text/javascript"> | ||||||
|  | err_messages.add({ | ||||||
|  | 	'jname':'<?php echo $this->translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>', | ||||||
|  | 	'host_hostname':'<?php echo $this->translate("This field can not be empty");?>', | ||||||
|  | 	'ip':'<?php echo $this->translate("Write correct ip address, e.g: 10.0.0.2");?>', | ||||||
|  | }); | ||||||
|  | </script> | ||||||
|  | <dialog id="jail-clone" class="window-box new"> | ||||||
|  | 	<h1> | ||||||
|  | 		<span class="new"><?php echo $this->translate('Clone jail');?></span> | ||||||
|  | 	</h1> | ||||||
|  | 	<h2><?php echo $this->translate('Cloned Jail Settings');?></h2> | ||||||
|  | 	<form class="win" method="post" id="jailCloneSettings" onsubmit="return false;"> | ||||||
|  | 		<div class="window-content"> | ||||||
|  | 			<p class="warning" style="width:400px;"> | ||||||
|  | 				<?php echo $this->translate('@clone_warning@'); ?> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Jail name');?>:</span> | ||||||
|  | 				<input type="text" name="jname" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{2,}" required="required" class="edit-disable" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Hostname');?> (FQDN):</span> | ||||||
|  | 				<input type="text" name="host_hostname" value="" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('IP address');?>:</span> | ||||||
|  | 				<input type="text" name="ip4_addr" value="DHCP" pattern="^DHCP$|^DHCP[vV]6$|^(?:[0-9]{1,3}\.){3}[0-9]{1,3}(\/[\d]{1,3})?$" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 		</div> | ||||||
|  | 	</form> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Clone');?>" class="new button ok-but" /> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
							
								
								
									
										35
									
								
								public/dialogs/_translate.cache/ru.jail-import.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								public/dialogs/_translate.cache/ru.jail-import.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,35 @@ | |||||||
|  | <script type="text/javascript"> | ||||||
|  | err_messages.add({ | ||||||
|  | 	'jname':'<?php echo $this->translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>', | ||||||
|  | }); | ||||||
|  | </script> | ||||||
|  | <dialog id="jail-import" class="window-box new"> | ||||||
|  | 	<h1> | ||||||
|  | 		<span class="new"><?php echo $this->translate('Import jail');?></span> | ||||||
|  | 		<span class="edit"><?php echo $this->translate('Edit jail');?></span> | ||||||
|  | 	</h1> | ||||||
|  | 	<h2><?php echo $this->translate('Jail Import');?></h2> | ||||||
|  | 	<form class="win" method="post" id="jailImport" onsubmit="return false;"> | ||||||
|  | 		<div class="window-content"> | ||||||
|  | 			<p> | ||||||
|  | 				<!-- D&D Markup --> | ||||||
|  | 				<div id="drag-and-drop-zone" class="uploader"> | ||||||
|  | 				  <div>Drag & Drop Files Here</div> | ||||||
|  | 				  <div class="or">-or-</div> | ||||||
|  | 				  <div class="browser"> | ||||||
|  | 				   <label> | ||||||
|  | 					 <span>Click to open the file Browser</span> | ||||||
|  | 					 <input type="file" name="jimp_files[]" multiple="multiple" title='Click to add Files'> | ||||||
|  | 				   </label> | ||||||
|  | 				  </div> | ||||||
|  | 				</div> | ||||||
|  | 				<div class="uploader-progress"></div> | ||||||
|  | 				<!-- /D&D Markup --> | ||||||
|  | 			</p> | ||||||
|  | 		</div> | ||||||
|  | 	</form> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
|  | <script type="text/javascript">clonos.fileUploadPrepare();</script> | ||||||
							
								
								
									
										36
									
								
								public/dialogs/_translate.cache/ru.jail-rename.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								public/dialogs/_translate.cache/ru.jail-rename.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,36 @@ | |||||||
|  | <script type="text/javascript"> | ||||||
|  | err_messages.add({ | ||||||
|  | 	'jname':'<?php echo $this->translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>', | ||||||
|  | 	'hostname':'<?php echo $this->translate("This field can not be empty");?>', | ||||||
|  | 	'ip':'<?php echo $this->translate("Write correct ip address, e.g: 10.0.0.2");?>', | ||||||
|  | }); | ||||||
|  | </script> | ||||||
|  | <dialog id="jail-rename" class="window-box new"> | ||||||
|  | 	<h1> | ||||||
|  | 		<span class="new"><?php echo $this->translate('Rename jail');?></span> | ||||||
|  | 	</h1> | ||||||
|  | 	<h2><?php echo $this->translate('Renamed Jail Settings');?></h2> | ||||||
|  | 	<form class="win" method="post" id="jailRenameSettings" onsubmit="return false;"> | ||||||
|  | 		<div class="window-content"> | ||||||
|  | 			<p class="warning" style="width:400px;"> | ||||||
|  | 				<?php echo $this->translate('@rename_warning@'); ?> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Jail name');?>:</span> | ||||||
|  | 				<input type="text" name="jname" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{2,}" required="required" class="edit-disable" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('Hostname');?> (FQDN):</span> | ||||||
|  | 				<input type="text" name="host_hostname" value="" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name"><?php echo $this->translate('IP address');?>:</span> | ||||||
|  | 				<input type="text" name="ip4_addr" value="DHCP" pattern="^DHCP$|^DHCP[vV]6$|^(?:[0-9]{1,3}\.){3}[0-9]{1,3}(\/[\d]{1,3})?$" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 		</div> | ||||||
|  | 	</form> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Rename');?>" class="new button ok-but" /> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
| @@ -0,0 +1,10 @@ | |||||||
|  | <div id="config-menu" style="display:none;"> | ||||||
|  | 	<span class="icon-cog menu-cog"></span> | ||||||
|  | 	<ul> | ||||||
|  | 		<li class="icon-edit" id="jddm-rename"> <?php echo $this->translate('rename');?></li> | ||||||
|  | 		<li class="icon-pencil" id="jddm-edit"> <?php echo $this->translate('edit');?></li> | ||||||
|  | 		<li class="icon-docs" id="jddm-clone"> <?php echo $this->translate('clone');?></li> | ||||||
|  | 		<li class="icon-gift" id="jddm-export"> <?php echo $this->translate('export');?></li> | ||||||
|  | 		<li class="icon-cubes" id="jddm-helpers"> <?php echo $this->translate('helpers');?></li> | ||||||
|  | 	</ul> | ||||||
|  | </div> | ||||||
							
								
								
									
										75
									
								
								public/dialogs/_translate.cache/ru.jail-settings.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										75
									
								
								public/dialogs/_translate.cache/ru.jail-settings.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,75 @@ | |||||||
|  | <script type="text/javascript"> | ||||||
|  | err_messages.add({ | ||||||
|  | 	'jname':'Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%', | ||||||
|  | 	'hostname':'This field can not be empty', | ||||||
|  | 	'ip':'Write correct ip address, e.g: 10.0.0.2', | ||||||
|  | 	'rootpass':'Password can not be less than 3 symbols', | ||||||
|  | 	'rootpass1':'Please retype password correctly', | ||||||
|  | }); | ||||||
|  | </script> | ||||||
|  | <dialog id="jail-settings" class="window-box new"> | ||||||
|  | 	<h1> | ||||||
|  | 		<span class="new">Create jail</span> | ||||||
|  | 		<span class="edit">Edit jail</span> | ||||||
|  | 	</h1> | ||||||
|  | 	<h2>Jail Settings</h2> | ||||||
|  | 	<form class="win" method="post" id="jailSettings" onsubmit="return false;"> | ||||||
|  | 		<div class="window-content"> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name">Имя контейнера:</span> | ||||||
|  | 				<input type="text" name="jname" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{2,}" required="required" class="edit-disable" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name">Hostname (FQDN):</span> | ||||||
|  | 				<input type="text" name="host_hostname" value="" required="required" /> | ||||||
|  | <!-- | ||||||
|  | 				<small class="astart-warn">— available on the jail is not running</small> | ||||||
|  | --> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name">IP address:</span> | ||||||
|  | 				<input type="text" name="ip4_addr" value="DHCP" pattern="^DHCP$|^DHCP[vV]6$|^(?:[0-9]{1,3}\.){3}[0-9]{1,3}(\/[\d]{1,3})?$" required="required" /> | ||||||
|  | 			</p> | ||||||
|  | 			<p class="new"> | ||||||
|  | 				<span class="field-name">Root password:</span> | ||||||
|  | 				<input type="password" name="user_pw_root" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> | ||||||
|  | 			</p> | ||||||
|  | 			<p class="new"> | ||||||
|  | 				<span class="field-name">Root password (again):</span> | ||||||
|  | 				<input type="password" name="user_pw_root_1" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name">Net Interface:</span> | ||||||
|  | 				<input type="radio" name="interface" value="auto" id="rint0" checked="checked" class="inline"><label for="rint0">auto</label></radio> | ||||||
|  | 				<input type="radio" name="interface" value="lo0" id="rint2" class="inline"><label for="rint2">lo0</label></radio> | ||||||
|  | 			</p> | ||||||
|  | 			<p> | ||||||
|  | 				<span class="field-name">Parameters:</span> | ||||||
|  | 				<input type="checkbox" name="baserw" id="bwritable-id" /><label for="bwritable-id"> Base writable?</label> | ||||||
|  | 				<br /> | ||||||
|  | 				<input type="checkbox" name="mount_ports" id="mount-id" /><label for="mount-id"> Mount /usr/ports?</label> | ||||||
|  | 				<br /> | ||||||
|  | 				<input type="checkbox" name="astart" id="astart-id" /><label for="astart-id"> Autostart jail at system startup</label> | ||||||
|  | 				<br /> | ||||||
|  | 				<input type="checkbox" name="vnet" id="vnet-id" /><label for="vnet-id"> Virtual network stack (VIMAGE)</label> | ||||||
|  | 			</p> | ||||||
|  | 			<p class="new"> | ||||||
|  | 				<span class="field-name">Enabled services:</span> | ||||||
|  | 				<input type="checkbox" name="serv-ftpd" value="ftpd" id="esrv0" class="inline"><label for="esrv0">ftpd</label></checkbox> | ||||||
|  | 				<input type="checkbox" name="serv-sshd" value="sshd" id="esrv1" class="inline"><label for="esrv1">sshd</label></checkbox> | ||||||
|  | 			</p> | ||||||
|  |  | ||||||
|  | 		</div> | ||||||
|  | 	</form> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="Create" class="new button ok-but" /> | ||||||
|  | 		<input type="button" value="Save" class="edit button ok-but" /> | ||||||
|  | 		<input type="button" value="Cancel" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
|  | <?php | ||||||
|  |  | ||||||
|  | /* | ||||||
|  | сложное правило для пароля: цифры, буквы маленькие и заглавные, плюс спецсимволы | ||||||
|  | ^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[^\w\s]).{8,20}$ | ||||||
|  | */ | ||||||
							
								
								
									
										9
									
								
								public/dialogs/_translate.cache/ru.tasklog.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								public/dialogs/_translate.cache/ru.tasklog.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | |||||||
|  | <dialog id="tasklog" class="window-box tasklog"> | ||||||
|  | 	<h1><?php echo $this->translate('Task log');?></h1> | ||||||
|  | 	<div class="window-content"> | ||||||
|  | 		Task log here… | ||||||
|  | 	</div> | ||||||
|  | 	<div class="buttons"> | ||||||
|  | 		<input type="button" value="<?php echo $this->translate('Close');?>" class="button red cancel-but" /> | ||||||
|  | 	</div> | ||||||
|  | </dialog> | ||||||
							
								
								
									
										19
									
								
								public/dialogs/_translate.cache/ru.vnc-bhyve.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								public/dialogs/_translate.cache/ru.vnc-bhyve.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,19 @@ | |||||||
|  | <dialog id="vnc"> | ||||||
|  | 	<div class="panel" style="text-align:right;"> | ||||||
|  | 		<span onclick="clonos.dialogFullscreen(this);" style="font-size:130%;cursor:pointer;" | ||||||
|  | 			<span class="dialog-fullscreen"></span> | ||||||
|  | 		</span> | ||||||
|  | 		<span onclick="clonos.dialogClose();" style="font-size:150%;font-weight:bold;cursor:pointer;"> | ||||||
|  | 			<span class="dialog-close"></span> | ||||||
|  | 		</span> | ||||||
|  | 	</div> | ||||||
|  | 	<div class="vnc-wait"> | ||||||
|  | 		<div class="outer"> | ||||||
|  | 			<div class="inner"> | ||||||
|  | 				<span class="icon-spin5 animate-spin"></span><?php echo $this->translate('Please, wait for initialize Virtual Machine');?> | ||||||
|  | 				<br /><small style="display: block;font-size: small;margin-top: 20px;"><?php echo $this->translate('You can click here, or wait');?>: <span id="vnc-countdown"><?php echo $this->translate('some time');?></span></small> | ||||||
|  | 			</div> | ||||||
|  | 		</div> | ||||||
|  | 	</div> | ||||||
|  | 	<iframe src="about:blank" id="vnc-iframe" border="0" width="1026" height="802"></iframe> | ||||||
|  | </dialog> | ||||||
							
								
								
									
										9
									
								
								public/dialogs/_translate.cache/ru.vnc.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								public/dialogs/_translate.cache/ru.vnc.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | |||||||
|  | <dialog id="vnc"> | ||||||
|  | 	<div class="panel" style="text-align:right;"> | ||||||
|  | 		<span onclick="clonos.dialogClose();" style="font-size:150%;font-weight:bold;cursor:pointer;"> | ||||||
|  | 			<span class="dialog-fullscreen"></span> | ||||||
|  | 			<span class="dialog-close"></span> | ||||||
|  | 		</span> | ||||||
|  | 	</div> | ||||||
|  | 	<iframe src="about:blank" id="vnc-iframe" border="0" width="800" height="600"></iframe> <!-- 760 436 --> | ||||||
|  | </dialog> | ||||||
| @@ -1,60 +1,60 @@ | |||||||
| <script type="text/javascript"> | <script type="text/javascript"> | ||||||
| err_messages.add({ | err_messages.add({ | ||||||
| 	'jname':'<?php echo $this->translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>', | 	'jname':'<translate id="19">Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%</translate>', | ||||||
| 	'hostname':'<?php echo $this->translate("This field can not be empty");?>', | 	'hostname':'<translate id="20">This field can not be empty</translate>', | ||||||
| 	'ip':'<?php echo $this->translate("Write correct ip address, e.g: 10.0.0.2");?>', | 	'ip':'<translate id="21">Write correct ip address, e.g: 10.0.0.2</translate>', | ||||||
| 	'rootpass':'<?php echo $this->translate("Password can not be less than 3 symbols");?>', | 	'rootpass':'<translate id="22">Password can not be less than 3 symbols</translate>', | ||||||
| 	'rootpass1':'<?php echo $this->translate("Please retype password correctly");?>', | 	'rootpass1':'<translate id="23">Please retype password correctly</translate>', | ||||||
| }); | }); | ||||||
| </script> | </script> | ||||||
| <dialog id="jail-settings" class="window-box new"> | <dialog id="jail-settings" class="window-box new"> | ||||||
| 	<h1> | 	<h1> | ||||||
| 		<span class="new"><?php echo $this->translate('Create jail');?></span> | 		<span class="new"><translate id="24">Create jail</translate></span> | ||||||
| 		<span class="edit"><?php echo $this->translate('Edit jail');?></span> | 		<span class="edit"><translate id="25">Edit jail</translate></span> | ||||||
| 	</h1> | 	</h1> | ||||||
| 	<h2><?php echo $this->translate('Jail Settings');?></h2> | 	<h2><translate id="26">Jail Settings</translate></h2> | ||||||
| 	<form class="win" method="post" id="jailSettings" onsubmit="return false;"> | 	<form class="win" method="post" id="jailSettings" onsubmit="return false;"> | ||||||
| 		<div class="window-content"> | 		<div class="window-content"> | ||||||
| 			<p> | 			<p> | ||||||
| 				<span class="field-name"><?php echo $this->translate('Jail name');?>:</span> | 				<span class="field-name"><translate id="27">Jail name</translate>:</span> | ||||||
| 				<input type="text" name="jname" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{2,}" required="required" class="edit-disable" /> | 				<input type="text" name="jname" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{2,}" required="required" class="edit-disable" /> | ||||||
| 			</p> | 			</p> | ||||||
| 			<p> | 			<p> | ||||||
| 				<span class="field-name"><?php echo $this->translate('Hostname');?> (FQDN):</span> | 				<span class="field-name"><translate id="28">Hostname</translate> (FQDN):</span> | ||||||
| 				<input type="text" name="host_hostname" value="" required="required" /> | 				<input type="text" name="host_hostname" value="" required="required" /> | ||||||
| <!-- | <!-- | ||||||
| 				<small class="astart-warn">— <?php echo $this->translate('available on the jail is not running');?></small> | 				<small class="astart-warn">— <translate id="29">available on the jail is not running</translate></small> | ||||||
| --> | --> | ||||||
| 			</p> | 			</p> | ||||||
| 			<p> | 			<p> | ||||||
| 				<span class="field-name"><?php echo $this->translate('IP address');?>:</span> | 				<span class="field-name"><translate id="30">IP address</translate>:</span> | ||||||
| 				<input type="text" name="ip4_addr" value="DHCP" pattern="^DHCP$|^DHCP[vV]6$|^(?:[0-9]{1,3}\.){3}[0-9]{1,3}(\/[\d]{1,3})?$" required="required" /> | 				<input type="text" name="ip4_addr" value="DHCP" pattern="^DHCP$|^DHCP[vV]6$|^(?:[0-9]{1,3}\.){3}[0-9]{1,3}(\/[\d]{1,3})?$" required="required" /> | ||||||
| 			</p> | 			</p> | ||||||
| 			<p class="new"> | 			<p class="new"> | ||||||
| 				<span class="field-name"><?php echo $this->translate('Root password');?>:</span> | 				<span class="field-name"><translate id="31">Root password</translate>:</span> | ||||||
| 				<input type="password" name="user_pw_root" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> | 				<input type="password" name="user_pw_root" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> | ||||||
| 			</p> | 			</p> | ||||||
| 			<p class="new"> | 			<p class="new"> | ||||||
| 				<span class="field-name"><?php echo $this->translate('Root password (again)');?>:</span> | 				<span class="field-name"><translate id="32">Root password (again)</translate>:</span> | ||||||
| 				<input type="password" name="user_pw_root_1" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> | 				<input type="password" name="user_pw_root_1" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> | ||||||
| 			</p> | 			</p> | ||||||
| 			<p> | 			<p> | ||||||
| 				<span class="field-name"><?php echo $this->translate('Net Interface');?>:</span> | 				<span class="field-name"><translate id="33">Net Interface</translate>:</span> | ||||||
| 				<input type="radio" name="interface" value="auto" id="rint0" checked="checked" class="inline"><label for="rint0">auto</label></radio> | 				<input type="radio" name="interface" value="auto" id="rint0" checked="checked" class="inline"><label for="rint0">auto</label></radio> | ||||||
| 				<input type="radio" name="interface" value="lo0" id="rint2" class="inline"><label for="rint2">lo0</label></radio> | 				<input type="radio" name="interface" value="lo0" id="rint2" class="inline"><label for="rint2">lo0</label></radio> | ||||||
| 			</p> | 			</p> | ||||||
| 			<p> | 			<p> | ||||||
| 				<span class="field-name"><?php echo $this->translate('Parameters');?>:</span> | 				<span class="field-name"><translate id="34">Parameters</translate>:</span> | ||||||
| 				<input type="checkbox" name="baserw" id="bwritable-id" /><label for="bwritable-id"> <?php echo $this->translate('Base writable');?>?</label> | 				<input type="checkbox" name="baserw" id="bwritable-id" /><label for="bwritable-id"> <translate id="35">Base writable</translate>?</label> | ||||||
| 				<br /> | 				<br /> | ||||||
| 				<input type="checkbox" name="mount_ports" id="mount-id" /><label for="mount-id"> <?php echo $this->translate('Mount');?> /usr/ports?</label> | 				<input type="checkbox" name="mount_ports" id="mount-id" /><label for="mount-id"> <translate id="36">Mount</translate> /usr/ports?</label> | ||||||
| 				<br /> | 				<br /> | ||||||
| 				<input type="checkbox" name="astart" id="astart-id" /><label for="astart-id"> <?php echo $this->translate('Autostart jail at system startup');?></label> | 				<input type="checkbox" name="astart" id="astart-id" /><label for="astart-id"> <translate id="37">Autostart jail at system startup</translate></label> | ||||||
| 				<br /> | 				<br /> | ||||||
| 				<input type="checkbox" name="vnet" id="vnet-id" /><label for="vnet-id"> <?php echo $this->translate('Virtual network stack (VIMAGE)');?></label> | 				<input type="checkbox" name="vnet" id="vnet-id" /><label for="vnet-id"> <translate id="38">Virtual network stack (VIMAGE)</translate></label> | ||||||
| 			</p> | 			</p> | ||||||
| 			<p class="new"> | 			<p class="new"> | ||||||
| 				<span class="field-name"><?php echo $this->translate('Enabled services');?>:</span> | 				<span class="field-name"><translate id="39">Enabled services</translate>:</span> | ||||||
| 				<input type="checkbox" name="serv-ftpd" value="ftpd" id="esrv0" class="inline"><label for="esrv0">ftpd</label></checkbox> | 				<input type="checkbox" name="serv-ftpd" value="ftpd" id="esrv0" class="inline"><label for="esrv0">ftpd</label></checkbox> | ||||||
| 				<input type="checkbox" name="serv-sshd" value="sshd" id="esrv1" class="inline"><label for="esrv1">sshd</label></checkbox> | 				<input type="checkbox" name="serv-sshd" value="sshd" id="esrv1" class="inline"><label for="esrv1">sshd</label></checkbox> | ||||||
| 			</p> | 			</p> | ||||||
| @@ -62,9 +62,9 @@ err_messages.add({ | |||||||
| 		</div> | 		</div> | ||||||
| 	</form> | 	</form> | ||||||
| 	<div class="buttons"> | 	<div class="buttons"> | ||||||
| 		<input type="button" value="<?php echo $this->translate('Create');?>" class="new button ok-but" /> | 		<input type="button" value="<translate id="40">Create</translate>" class="new button ok-but" /> | ||||||
| 		<input type="button" value="<?php echo $this->translate('Save');?>" class="edit button ok-but" /> | 		<input type="button" value="<translate id="41">Save</translate>" class="edit button ok-but" /> | ||||||
| 		<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" /> | 		<input type="button" value="<translate id="42">Cancel</translate>" class="button red cancel-but" /> | ||||||
| 	</div> | 	</div> | ||||||
| </dialog> | </dialog> | ||||||
| <?php | <?php | ||||||
|   | |||||||
| @@ -12,7 +12,7 @@ require_once($_real_path.'/php/menu.php'); | |||||||
| $chunks=Utils::gen_uri_chunks($uri); | $chunks=Utils::gen_uri_chunks($uri); | ||||||
| $clonos=new ClonOS($_real_path, $chunks); | $clonos=new ClonOS($_real_path, $chunks); | ||||||
| $locale = new Localization($_real_path.'/public/'); # /usr/home/web/cp/clonos/public/ | $locale = new Localization($_real_path.'/public/'); # /usr/home/web/cp/clonos/public/ | ||||||
| $menu=new Menu($locale, $chunks); | $menu=new Menu($locale, $chunks, $_real_path.'/public/pages/'); | ||||||
|  |  | ||||||
| if(isset($_GET['upload'])){ | if(isset($_GET['upload'])){ | ||||||
| 	include('upload.php'); | 	include('upload.php'); | ||||||
| @@ -48,6 +48,40 @@ if(!$user_info['error']){ | |||||||
| }else{ | }else{ | ||||||
| 	$user_info['username']='guest'; | 	$user_info['username']='guest'; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | /* | ||||||
|  | <!--place(...)--> | ||||||
|  | menu->title | ||||||
|  | --- | ||||||
|  | if(isset($user_info_txt)) echo $user_info_txt | ||||||
|  | --- | ||||||
|  | <!--place(body)--> | ||||||
|  | if(file_exists($file_name)){ | ||||||
|  | 	include($file_name); | ||||||
|  | } else { | ||||||
|  | 	echo '<h1>'.$locale->translate('Not implemented yet').'!</h1>'; | ||||||
|  | } | ||||||
|  | <!--place(dialogs)--> | ||||||
|  | $clonos->placeDialogs(); | ||||||
|  | --- | ||||||
|  | <!--place(config::language)-- > | ||||||
|  | foreach(Config::$languages as $lng=>$lngname){ | ||||||
|  | 	$sel = ($lang==$lng) ? ' selected="selected"' : ''; | ||||||
|  | 	echo '				<option value="'.$lng.'"'.$sel.'>'.$lngname.'</option>'.PHP_EOL; | ||||||
|  | } | ||||||
|  | --- | ||||||
|  | <!--place(username)--> | ||||||
|  | <?php echo $user_info['username']; ?> | ||||||
|  | --- | ||||||
|  | <!--place(login-area-hide)--> | ||||||
|  | <?php if(!$user_info['error']) echo ' hide'; ?> | ||||||
|  | -- | ||||||
|  | <!--place(dialog:system-login)--> | ||||||
|  | <?php echo $clonos->placeDialogByName('system-login'); ?> | ||||||
|  | */ | ||||||
|  |  | ||||||
|  |  | ||||||
|  | #include($_real_path.'/public/pages/index.php'); exit; | ||||||
| ?> | ?> | ||||||
| <!DOCTYPE html> | <!DOCTYPE html> | ||||||
| <head> | <head> | ||||||
| @@ -89,7 +123,7 @@ if(!$user_info['error']){ | |||||||
| </script> | </script> | ||||||
| <body class="gadget1 login <?php echo $uri;?>"> | <body class="gadget1 login <?php echo $uri;?>"> | ||||||
|  |  | ||||||
| <main> | <main<?php if($user_info['error']) echo ' class="blur"';?>> | ||||||
| <div class="main"><div id="content"> | <div class="main"><div id="content"> | ||||||
| <div id="ctop"> | <div id="ctop"> | ||||||
| <?php | <?php | ||||||
|   | |||||||
| @@ -52,6 +52,13 @@ var clonos={ | |||||||
| 			*/ | 			*/ | ||||||
| 			//this.route(res); | 			//this.route(res); | ||||||
| 		} | 		} | ||||||
|  | 		$('ul.menu a').removeClass('sel'); | ||||||
|  | 		var p=window.location.pathname.split('/'); | ||||||
|  | 		$('ul.menu a[href="/'+p[1]+'/"]').addClass('sel'); | ||||||
|  | 		if(isset(page_titles)) | ||||||
|  | 		{ | ||||||
|  | 			$('div.header #title').html(page_titles[p[1]]); | ||||||
|  | 		} | ||||||
| 	}, | 	}, | ||||||
| 	route:function(args) | 	route:function(args) | ||||||
| 	{ | 	{ | ||||||
| @@ -2268,6 +2275,7 @@ var clonos={ | |||||||
| 	loginGo:function() | 	loginGo:function() | ||||||
| 	{ | 	{ | ||||||
| 		$('.login-wait').show(); | 		$('.login-wait').show(); | ||||||
|  | 		$('main').addClass('blur'); | ||||||
| 		this.loadData('login',$.proxy(this.onLogin,this), | 		this.loadData('login',$.proxy(this.onLogin,this), | ||||||
| 				[{'name':'login','value':$('#loginData input[name="login"]').val()}, | 				[{'name':'login','value':$('#loginData input[name="login"]').val()}, | ||||||
| 				 {'name':'password','value':$('#loginData input[name="password"]').val()}] | 				 {'name':'password','value':$('#loginData input[name="password"]').val()}] | ||||||
| @@ -2289,6 +2297,7 @@ var clonos={ | |||||||
| 			{ | 			{ | ||||||
| 				$('.login-area').fadeOut(200); | 				$('.login-area').fadeOut(200); | ||||||
| 				$('#user-login').html(data.username); | 				$('#user-login').html(data.username); | ||||||
|  | 				$('main').removeClass('blur'); | ||||||
| 				this.dataReload(); | 				this.dataReload(); | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
| @@ -2329,6 +2338,7 @@ var clonos={ | |||||||
| 		 | 		 | ||||||
| 		$('#user-login').html('guest'); | 		$('#user-login').html('guest'); | ||||||
| 		this.loginFadeIn(); | 		this.loginFadeIn(); | ||||||
|  | 		$('main').addClass('blur'); | ||||||
| 		this.dataReload(); | 		this.dataReload(); | ||||||
| 	}, | 	}, | ||||||
| 	clearPageInfo:function() | 	clearPageInfo:function() | ||||||
|   | |||||||
							
								
								
									
										19
									
								
								public/pages/_translate.cache/en.menu.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								public/pages/_translate.cache/en.menu.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,19 @@ | |||||||
|  | 	<ul class="menu"> | ||||||
|  | 		<li><a href="/overview/" title="Summary Overview"><span class="icon-chart-bar"></span><span class="mtxt">Overview</span></a></li> | ||||||
|  | 		<li><a href="/jailscontainers/" title="Jail containers control panel"><span class="icon-server"></span><span class="mtxt">Jail containers</span></a></li> | ||||||
|  | 		<li><a href="/instance_jail/" title="Helpers and wizard for containers"><span class="icon-cubes"></span><span class="mtxt">Template for jail</span></a></li> | ||||||
|  | 		<li><a href="/bhyvevms/" title="Virtual machine control panel"><span class="icon-th-list"></span><span class="mtxt">Bhyve VMs</span></a></li> | ||||||
|  | 		<li><a href="/vm_packages/" title="Manage VM Packages group"><span class="icon-cubes"></span><span class="mtxt">VM Packages</span></a></li> | ||||||
|  | 		<li><a href="/k8s/" title="Manage K8S clusters"><span class="icon-cubes"></span><span class="mtxt">K8S clusters</span></a></li> | ||||||
|  | 		<li><a href="/vpnet/" title="Manage for virtual private networks"><span class="icon-plug"></span><span class="mtxt">Virtual Private Network</span></a></li> | ||||||
|  | 		<li><a href="/authkey/" title="Manage for SSH auth key"><span class="icon-key"></span><span class="mtxt">Authkeys</span></a></li> | ||||||
|  | 		<li><a href="/media/" title="Virtual Media Manager"><span class="icon-inbox"></span><span class="mtxt">Storage Media</span></a></li> | ||||||
|  | 		<li><a href="/imported/" title="Imported images"><span class="icon-upload"></span><span class="mtxt">Imported images</span></a></li> | ||||||
|  | 		<li><a href="/bases/" title="FreeBSD bases manager"><span class="icon-database"></span><span class="mtxt">FreeBSD Bases</span></a></li> | ||||||
|  | 		<li><a href="/sources/" title="FreeBSD sources manager"><span class="icon-edit"></span><span class="mtxt">FreeBSD Sources</span></a></li> | ||||||
|  | 		<li><a href="/tasklog/" title="System task log"><span class="icon-list-alt"></span><span class="mtxt">TaskLog</span></a></li> | ||||||
|  | 		<li><a href="/sqlite/" title="SQLite admin interface"><span class="icon-wpforms"></span><span class="mtxt">SQLite admin</span></a></li> | ||||||
|  | 	</ul> | ||||||
|  | 	<script type="text/javascript"> | ||||||
|  | 		var page_titles={"overview":"Summary Overview","jailscontainers":"Jail containers control panel","instance_jail":"Helpers and wizard for containers","bhyvevms":"Virtual machine control panel","vm_packages":"Manage VM Packages group","k8s":"Manage K8S clusters","vpnet":"Manage for virtual private networks","authkey":"Manage for SSH auth key","media":"Virtual Media Manager","imported":"Imported images","bases":"FreeBSD bases manager","sources":"FreeBSD sources manager","tasklog":"System task log","sqlite":"SQLite admin interface","settings":"CBSD Settings","users":"CBSD Users"} | ||||||
|  | 	</script> | ||||||
							
								
								
									
										19
									
								
								public/pages/_translate.cache/es.menu.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								public/pages/_translate.cache/es.menu.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,19 @@ | |||||||
|  | 	<ul class="menu"> | ||||||
|  | 		<li><a href="/overview/" title="Resumen General" class="sel"><span class="icon-chart-bar"></span><span class="mtxt">Resumen</span></a></li> | ||||||
|  | 		<li><a href="/jailscontainers/" title="Panel de control de Jaulas"><span class="icon-server"></span><span class="mtxt">Jaulas contenedores</span></a></li> | ||||||
|  | 		<li><a href="/instance_jail/" title="Asistentes para contenedores"><span class="icon-cubes"></span><span class="mtxt">Plantilla de jaula</span></a></li> | ||||||
|  | 		<li><a href="/bhyvevms/" title="Panel de control de Máquinas Virtuales"><span class="icon-th-list"></span><span class="mtxt">Bhyve VMs</span></a></li> | ||||||
|  | 		<li><a href="/vm_packages/" title="Manage VM Packages group"><span class="icon-cubes"></span><span class="mtxt">Paquetes VM</span></a></li> | ||||||
|  | 		<li><a href="/k8s/" title="Manage K8S clusters"><span class="icon-cubes"></span><span class="mtxt">K8S clusters</span></a></li> | ||||||
|  | 		<li><a href="/vpnet/" title="Manage for virtual private networks"><span class="icon-plug"></span><span class="mtxt">Red Privada Virtual</span></a></li> | ||||||
|  | 		<li><a href="/authkey/" title="Manage for SSH auth key"><span class="icon-key"></span><span class="mtxt">Claves de autenticación</span></a></li> | ||||||
|  | 		<li><a href="/media/" title="Gestor de Medios Virtuales"><span class="icon-inbox"></span><span class="mtxt">Medios de Almacenamiento</span></a></li> | ||||||
|  | 		<li><a href="/imported/" title="Imported images"><span class="icon-upload"></span><span class="mtxt">Imported images</span></a></li> | ||||||
|  | 		<li><a href="/bases/" title="Gestor de bases FreeBSD"><span class="icon-database"></span><span class="mtxt">Bases FreeBSD</span></a></li> | ||||||
|  | 		<li><a href="/sources/" title="Gestor de fuentes FreeBSD"><span class="icon-edit"></span><span class="mtxt">Fuentes FreeBSD</span></a></li> | ||||||
|  | 		<li><a href="/tasklog/" title="Registro de Tareas del Sistema"><span class="icon-list-alt"></span><span class="mtxt">Registro de Tareas</span></a></li> | ||||||
|  | 		<li><a href="/sqlite/" title="SQLite admin interface"><span class="icon-wpforms"></span><span class="mtxt">SQLite admin</span></a></li> | ||||||
|  | 	</ul> | ||||||
|  | 	<script type="text/javascript"> | ||||||
|  | 		var page_titles={"overview":"Resumen General","jailscontainers":"Panel de control de Jaulas","instance_jail":"Asistentes para contenedores","bhyvevms":"Panel de control de M\u00e1quinas Virtuales","vm_packages":"Manage VM Packages group","k8s":"Manage K8S clusters","vpnet":"Manage for virtual private networks","authkey":"Manage for SSH auth key","media":"Gestor de Medios Virtuales","imported":"Imported images","bases":"Gestor de bases FreeBSD","sources":"Gestor de fuentes FreeBSD","tasklog":"Registro de Tareas del Sistema","sqlite":"SQLite admin interface","settings":"CBSD Settings","users":"CBSD Users"} | ||||||
|  | 	</script> | ||||||
							
								
								
									
										19
									
								
								public/pages/_translate.cache/ru.menu.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								public/pages/_translate.cache/ru.menu.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,19 @@ | |||||||
|  | 	<ul class="menu"> | ||||||
|  | 		<li><a href="/overview/" title="Общая информация" class="sel"><span class="icon-chart-bar"></span><span class="mtxt">Общая информация</span></a></li> | ||||||
|  | 		<li><a href="/jailscontainers/" title="Панель управления контейнерами"><span class="icon-server"></span><span class="mtxt">Контейнеры</span></a></li> | ||||||
|  | 		<li><a href="/instance_jail/" title="Хелперы и шаблоны для контейнеров"><span class="icon-cubes"></span><span class="mtxt">Шаблоны окружений</span></a></li> | ||||||
|  | 		<li><a href="/bhyvevms/" title="Панель управления нодами"><span class="icon-th-list"></span><span class="mtxt">Виртуальные машины</span></a></li> | ||||||
|  | 		<li><a href="/vm_packages/" title="Manage VM Packages group"><span class="icon-cubes"></span><span class="mtxt">Шаблоны виртуальных машин</span></a></li> | ||||||
|  | 		<li><a href="/k8s/" title="Управление K8S кластерами"><span class="icon-cubes"></span><span class="mtxt">Кластеры K8S</span></a></li> | ||||||
|  | 		<li><a href="/vpnet/" title="Панель управления подсетями"><span class="icon-plug"></span><span class="mtxt">Виртуальные сети</span></a></li> | ||||||
|  | 		<li><a href="/authkey/" title="Панель управления авторизационными ключами"><span class="icon-key"></span><span class="mtxt">Ключи авторизации</span></a></li> | ||||||
|  | 		<li><a href="/media/" title="Менеджер виртуальных носителей"><span class="icon-inbox"></span><span class="mtxt">Виртуальные носители</span></a></li> | ||||||
|  | 		<li><a href="/imported/" title="Импортированные образы"><span class="icon-upload"></span><span class="mtxt">Импортированные образы</span></a></li> | ||||||
|  | 		<li><a href="/bases/" title="Управление базами FreeBSD"><span class="icon-database"></span><span class="mtxt">Базы FreeBSD</span></a></li> | ||||||
|  | 		<li><a href="/sources/" title="Управление исходными кодами FreeBSD"><span class="icon-edit"></span><span class="mtxt">FreeBSD исходники</span></a></li> | ||||||
|  | 		<li><a href="/tasklog/" title="Просмотр журнала системных задач"><span class="icon-list-alt"></span><span class="mtxt">Логи задач</span></a></li> | ||||||
|  | 		<li><a href="/sqlite/" title="SQLite admin interface"><span class="icon-wpforms"></span><span class="mtxt">SQLite admin</span></a></li> | ||||||
|  | 	</ul> | ||||||
|  | 	<script type="text/javascript"> | ||||||
|  | 		var page_titles={"overview":"\u041e\u0431\u0449\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f","jailscontainers":"\u041f\u0430\u043d\u0435\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430\u043c\u0438","instance_jail":"\u0425\u0435\u043b\u043f\u0435\u0440\u044b \u0438 \u0448\u0430\u0431\u043b\u043e\u043d\u044b \u0434\u043b\u044f \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432","bhyvevms":"\u041f\u0430\u043d\u0435\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u043e\u0434\u0430\u043c\u0438","vm_packages":"Manage VM Packages group","k8s":"\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 K8S \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430\u043c\u0438","vpnet":"\u041f\u0430\u043d\u0435\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u0434\u0441\u0435\u0442\u044f\u043c\u0438","authkey":"\u041f\u0430\u043d\u0435\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u043c\u0438 \u043a\u043b\u044e\u0447\u0430\u043c\u0438","media":"\u041c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043d\u043e\u0441\u0438\u0442\u0435\u043b\u0435\u0439","imported":"\u0418\u043c\u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043e\u0431\u0440\u0430\u0437\u044b","bases":"\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0431\u0430\u0437\u0430\u043c\u0438 FreeBSD","sources":"\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c\u0438 \u043a\u043e\u0434\u0430\u043c\u0438 FreeBSD","tasklog":"\u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u0436\u0443\u0440\u043d\u0430\u043b\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447","sqlite":"SQLite admin interface","settings":"CBSD Settings","users":"CBSD Users"} | ||||||
|  | 	</script> | ||||||
							
								
								
									
										138
									
								
								public/pages/index.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										138
									
								
								public/pages/index.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,138 @@ | |||||||
|  | <!DOCTYPE html> | ||||||
|  | <head> | ||||||
|  | 	<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> | ||||||
|  | 	<title>ClonOS — <?php echo $menu->title; ?></title> | ||||||
|  | 	<link href="/images/favicon.ico?" rel="shortcut icon" type="image/x-icon" /> | ||||||
|  | 	<script src="/js/jquery.js" type="text/javascript"></script> | ||||||
|  | 	<script src="/js/clonos.js" type="text/javascript"></script> | ||||||
|  | 	<script src="/js/dmuploader.js" type="text/javascript"></script> | ||||||
|  | 	<script src="/js/smoothie.js" type="text/javascript"></script> | ||||||
|  | 	<script src="/js/noty/packaged/jquery.noty.packaged.min.js" type="text/javascript"></script> | ||||||
|  | 	<link type="text/css" href="/css/reset.css" rel="stylesheet" /> | ||||||
|  | 	<link type="text/css" href="/css/styles.css" rel="stylesheet" /> | ||||||
|  | 	<link type="text/css" href="/font/clonos.css" rel="stylesheet" /> | ||||||
|  | 	<link type="text/css" href="/font/animation.css" rel="stylesheet" /> | ||||||
|  | 	<script src="/lang/<?php echo $lang; ?>.js" type="text/javascript"></script> | ||||||
|  | 	<style type="text/css">html{background-color:#aaa;} .hide{display:none;}</style> | ||||||
|  | 	<meta name="keywords" content="" /> | ||||||
|  | 	<meta name="description" content="" /> | ||||||
|  | 	<script type="text/javascript"> | ||||||
|  | 		_first_start=true; | ||||||
|  | 		err_messages={add:function(arr){for(n in arr){err_messages[n]=arr[n];}}}; | ||||||
|  | 		<?php if(isset($user_info_txt)) echo $user_info_txt; ?> | ||||||
|  | 	</script> | ||||||
|  | </head> | ||||||
|  | <script type="text/javascript"> | ||||||
|  | 	try{ | ||||||
|  | 		var theme=localStorage.getItem('Theme') || 'light'; | ||||||
|  | 		var cs=['light','dark']; | ||||||
|  | 		for(c=0,cl=cs.length;c<cl;c++) | ||||||
|  | 		{ | ||||||
|  | 			var css=cs[c]; | ||||||
|  | 			var disabled=(theme==css)?'':' disabled="disabled"'; | ||||||
|  | 			var hcss=$('<link rel="stylesheet" href="/css/themes/'+css+'.css" id="'+css+'" class="alternate"'+disabled+'>'); | ||||||
|  | 			$('head').append(hcss); | ||||||
|  | 			$('#'+css).get(0).disabled=(theme!=css); | ||||||
|  | 		} | ||||||
|  | 	}catch(e){} | ||||||
|  | </script> | ||||||
|  | <body class="gadget1 login <?php echo $uri;?>"> | ||||||
|  |  | ||||||
|  | <main> | ||||||
|  | <div class="main"><div id="content"> | ||||||
|  | <div id="ctop"> | ||||||
|  | <?php | ||||||
|  | if(file_exists($file_name)){ | ||||||
|  | 	include($file_name); | ||||||
|  | } else { | ||||||
|  | 	echo '<h1><translate>Not implemented yet</translate>!</h1>'; | ||||||
|  | } | ||||||
|  | $clonos->placeDialogs(); | ||||||
|  | ?> | ||||||
|  | </div> | ||||||
|  | <div id="cdown"><span class="split-close"></span> | ||||||
|  | <div id="cinfo"> | ||||||
|  | 		<div class="left"> | ||||||
|  | 			<dl id="summaryInfo"> | ||||||
|  | 				<dt>Имя клетки:</dt> | ||||||
|  | 				<dd>Jail1</dd> | ||||||
|  | 			</dl> | ||||||
|  | 		</div> | ||||||
|  | 		<div class="right"> | ||||||
|  | 			<h2><translate>CPU usage</translate>, %:</h2> | ||||||
|  | 			<div class="graph v-black g--summary-cpu l-cpu"></div> | ||||||
|  | 			<br /> | ||||||
|  | 			<h2><translate>Memory usage</translate>, %:</h2> | ||||||
|  | 			<div class="graph v-black g--summary-mem l-mem"></div> | ||||||
|  | 			<br /> | ||||||
|  | 			<h2><translate>I/O storage</translate>, iops:</h2> | ||||||
|  | 			<div class="graph v-black g--summary-iops l-read,write pr-no te-iops"></div> | ||||||
|  | 			<br /> | ||||||
|  | 			<h2><translate>I/O storage</translate>, bit per seconds:</h2> | ||||||
|  | 			<div class="graph v-black g--summary-bps l-read,write pr-no te-bps"></div> | ||||||
|  | 		</div> | ||||||
|  | </div> | ||||||
|  | </div> | ||||||
|  | </div></div> | ||||||
|  | </main> | ||||||
|  |  | ||||||
|  | <div class="menu"> | ||||||
|  | <div id="menu"> | ||||||
|  | 	<div class="closer"></div> | ||||||
|  | <?php | ||||||
|  | echo $menu->html; | ||||||
|  | ?> | ||||||
|  | 	<div id="console"></div> | ||||||
|  | </div> | ||||||
|  | </div> | ||||||
|  |  | ||||||
|  | <header> | ||||||
|  | 	<div class="top-right"> | ||||||
|  | 		<span class="txt"> | ||||||
|  | 			<a href="https://www.patreon.com/clonos" target="_blank"><translate>DONATE</translate></a> | ||||||
|  | 			<span class="space"></span> | ||||||
|  | 			<translate>VERSION</translate>: <?php file_get_contents($clonos->realpath.'version'); ?> | ||||||
|  | 			<span class="space"></span> | ||||||
|  | 			<translate>THEMES</translate>: | ||||||
|  | 		</span> | ||||||
|  | 		<span class="ch_theme"> | ||||||
|  | 			 <span class="light"></span><span class="dark"></span> | ||||||
|  | 		</span> | ||||||
|  | 	</div> | ||||||
|  | 	<div class="header"> | ||||||
|  | 	<span id="title"><?php echo $menu->title; ?></span> | ||||||
|  | 	<ul> | ||||||
|  | 		<li class="mhome"><a href="/">Home</a></li> | ||||||
|  | <?php // if($clonos->environment=='development') { ?> | ||||||
|  | 		<li><a href="/settings/"><translate>Settings</translate></a></li> | ||||||
|  | <?php // } ?> | ||||||
|  | 		<li><a href="/users/"><translate>Users</translate></a></li> | ||||||
|  | 		<li><a target="_blank" href="/shell/">>><translate>Console</translate></a></li> | ||||||
|  | <!-- | ||||||
|  | 		<li><a href="/profile/"><translate>Profile</translate></a></li> | ||||||
|  | 		<li><a href="/support/"><translate>Support</translate></a></li> | ||||||
|  | --> | ||||||
|  | 		<li><a name=""> | ||||||
|  | 			<select id="lng-sel"> | ||||||
|  | <?php | ||||||
|  | foreach(Config::$languages as $lng=>$lngname){ | ||||||
|  | 	$sel = ($lang==$lng) ? ' selected="selected"' : ''; | ||||||
|  | 	echo '				<option value="'.$lng.'"'.$sel.'>'.$lngname.'</option>'.PHP_EOL; | ||||||
|  | } | ||||||
|  | ?> | ||||||
|  | 			</select> | ||||||
|  | 		</a></li> | ||||||
|  | 		<li><a onclick="clonos.logout();" class="link" id="user-login"><?php echo $user_info['username']; ?></a></li> | ||||||
|  | 	</ul> | ||||||
|  | 	</div> | ||||||
|  | </header> | ||||||
|  |  | ||||||
|  | <div class="login-area<?php if(!$user_info['error']) echo ' hide'; ?>"><?php echo $clonos->placeDialogByName('system-login'); ?> | ||||||
|  | 	<div class="ccopy">ClonOS — is a powerfull system for…</div> | ||||||
|  | 	<div class="ccopy">Cloud computing, Lightweight containerization, Virtualization, etc…</div> | ||||||
|  | </div> | ||||||
|  |  | ||||||
|  | <div class="spinner"></div> | ||||||
|  | <div class="online icon-online" id="net-stat" onclick="ws_debug();"></div> | ||||||
|  | </body> | ||||||
|  | </html> | ||||||
| @@ -0,0 +1,3 @@ | |||||||
|  | This files is cache of translated pages, do not translate it! | ||||||
|  | If you are a translator, please read the documentation on the translation on the website. | ||||||
|  | Thank you. | ||||||
| @@ -14,22 +14,22 @@ $clonos->useDialogs([ | |||||||
| ]); | ]); | ||||||
|  |  | ||||||
| ?> | ?> | ||||||
| <h1>{translate:[Jail containers:]}</h1> | <h1><translate>Jail containers:</translate></h1> | ||||||
|  |  | ||||||
| <p><span class="top-button icon-plus id:jail-settings">{translate:[Create jail]}</span> | <p><span class="top-button icon-plus id:jail-settings"><translate>Create jail</translate></span> | ||||||
| <span class="top-button icon-upload id:jail-import">{translate:[Import]}</span></p> | <span class="top-button icon-upload id:jail-import"><translate>Import</translate></span></p> | ||||||
|  |  | ||||||
| <table class="tsimple" id="jailslist" width="100%"> | <table class="tsimple" id="jailslist" width="100%"> | ||||||
| 	<thead> | 	<thead> | ||||||
| 		<tr> | 		<tr> | ||||||
| 			<th class="elastic">{translate:[Node name]}</th> | 			<th class="elastic"><translate>Node name</translate></th> | ||||||
| 			<th class="txtleft">{translate:[Jail]}</th> | 			<th class="txtleft"><translate>Jail</translate></th> | ||||||
| 			<th class="wdt-120">{translate:[Usage]}</th> | 			<th class="wdt-120"><translate>Usage</translate></th> | ||||||
| 			<th class="txtleft">{translate:[IP address]}</th> | 			<th class="txtleft"><translate>IP address</translate></th> | ||||||
| 			<th class="txtcenter wdt-120">{translate:[Status]}</th> | 			<th class="txtcenter wdt-120"><translate>Status</translate></th> | ||||||
| 			<th colspan="4" class="txtcenter wdt-100">{translate:[Action]}</th> | 			<th colspan="4" class="txtcenter wdt-100"><translate>Action</translate></th> | ||||||
| 			<th class="wdt-30">{translate:[VNC]}</th> | 			<th class="wdt-30"><translate>VNC</translate></th> | ||||||
| 			<th class="txtcenter wdt-50" title="VNC port">{translate:[Port]}</th> | 			<th class="txtcenter wdt-50" title="VNC port"><translate>Port</translate></th> | ||||||
| 		</tr> | 		</tr> | ||||||
| 	</thead> | 	</thead> | ||||||
| 	<tbody></tbody> | 	<tbody></tbody> | ||||||
|   | |||||||
| @@ -1,4 +0,0 @@ | |||||||
| This files is cache of translated pages, do not translate it! |  | ||||||
|  |  | ||||||
| translate template: |  | ||||||
| 	{translate:[Last One]} |  | ||||||
							
								
								
									
										144
									
								
								public/pages/orig.index.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										144
									
								
								public/pages/orig.index.html
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,144 @@ | |||||||
|  | <!DOCTYPE html> | ||||||
|  | <head> | ||||||
|  | 	<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> | ||||||
|  | 	<title>ClonOS — <!--place(menu->title)--></title> | ||||||
|  | 	<link href="/images/favicon.ico?" rel="shortcut icon" type="image/x-icon" /> | ||||||
|  | 	<script src="/js/jquery.js" type="text/javascript"></script> | ||||||
|  | 	<script src="/js/clonos.js" type="text/javascript"></script> | ||||||
|  | 	<script src="/js/dmuploader.js" type="text/javascript"></script> | ||||||
|  | 	<script src="/js/smoothie.js" type="text/javascript"></script> | ||||||
|  | 	<script src="/js/noty/packaged/jquery.noty.packaged.min.js" type="text/javascript"></script> | ||||||
|  | 	<link type="text/css" href="/css/reset.css" rel="stylesheet" /> | ||||||
|  | 	<link type="text/css" href="/css/styles.css" rel="stylesheet" /> | ||||||
|  | 	<link type="text/css" href="/font/clonos.css" rel="stylesheet" /> | ||||||
|  | 	<link type="text/css" href="/font/animation.css" rel="stylesheet" /> | ||||||
|  | 	<script src="/lang/<?php echo $lang; ?>.js" type="text/javascript"></script> | ||||||
|  | 	<style type="text/css">html{background-color:#aaa;} .hide{display:none;}</style> | ||||||
|  | 	<meta name="keywords" content="" /> | ||||||
|  | 	<meta name="description" content="" /> | ||||||
|  | 	<script type="text/javascript"> | ||||||
|  | 		_first_start=true; | ||||||
|  | 		err_messages={add:function(arr){for(n in arr){err_messages[n]=arr[n];}}}; | ||||||
|  | 		<!--place(user_info_txt)--?> | ||||||
|  | 	</script> | ||||||
|  | </head> | ||||||
|  | <script type="text/javascript"> | ||||||
|  | 	try{ | ||||||
|  | 		var theme=localStorage.getItem('Theme') || 'light'; | ||||||
|  | 		var cs=['light','dark']; | ||||||
|  | 		for(c=0,cl=cs.length;c<cl;c++) | ||||||
|  | 		{ | ||||||
|  | 			var css=cs[c]; | ||||||
|  | 			var disabled=(theme==css)?'':' disabled="disabled"'; | ||||||
|  | 			var hcss=$('<link rel="stylesheet" href="/css/themes/'+css+'.css" id="'+css+'" class="alternate"'+disabled+'>'); | ||||||
|  | 			$('head').append(hcss); | ||||||
|  | 			$('#'+css).get(0).disabled=(theme!=css); | ||||||
|  | 		} | ||||||
|  | 	}catch(e){} | ||||||
|  | </script> | ||||||
|  | <body class="gadget1 login <?php echo $uri;?>"> | ||||||
|  |  | ||||||
|  | <main> | ||||||
|  | <div class="main"><div id="content"> | ||||||
|  | <div id="ctop"> | ||||||
|  | <!--place(body)-- > | ||||||
|  | <!-- | ||||||
|  | <-?php | ||||||
|  | if(file_exists($file_name)){ | ||||||
|  | 	include($file_name); | ||||||
|  | } else { | ||||||
|  | 	echo '<h1>'.$locale->translate('Not implemented yet').'!</h1>'; | ||||||
|  | } | ||||||
|  |  | ||||||
|  | <!--place(dialogs)-- > | ||||||
|  | $clonos->placeDialogs(); | ||||||
|  | ?-> | ||||||
|  | --> | ||||||
|  | </div> | ||||||
|  | <div id="cdown"><span class="split-close"></span> | ||||||
|  | <div id="cinfo"> | ||||||
|  | 		<div class="left"> | ||||||
|  | 			<dl id="summaryInfo"> | ||||||
|  | 				<dt>Имя клетки:</dt> | ||||||
|  | 				<dd>Jail1</dd> | ||||||
|  | 			</dl> | ||||||
|  | 		</div> | ||||||
|  | 		<div class="right"> | ||||||
|  | 			<h2><translate>CPU usage</translate>, %:</h2> | ||||||
|  | 			<div class="graph v-black g--summary-cpu l-cpu"></div> | ||||||
|  | 			<br /> | ||||||
|  | 			<h2><translate>Memory usage</translate>, %:</h2> | ||||||
|  | 			<div class="graph v-black g--summary-mem l-mem"></div> | ||||||
|  | 			<br /> | ||||||
|  | 			<h2><translate>I/O storage</translate>, iops:</h2> | ||||||
|  | 			<div class="graph v-black g--summary-iops l-read,write pr-no te-iops"></div> | ||||||
|  | 			<br /> | ||||||
|  | 			<h2><translate>I/O storage</translate>, bit per seconds:</h2> | ||||||
|  | 			<div class="graph v-black g--summary-bps l-read,write pr-no te-bps"></div> | ||||||
|  | 		</div> | ||||||
|  | </div> | ||||||
|  | </div> | ||||||
|  | </div></div> | ||||||
|  | </main> | ||||||
|  |  | ||||||
|  | <div class="menu"> | ||||||
|  | <div id="menu"> | ||||||
|  | 	<div class="closer"></div> | ||||||
|  | <?php | ||||||
|  | echo $menu->html; | ||||||
|  | ?> | ||||||
|  | 	<div id="console"></div> | ||||||
|  | </div> | ||||||
|  | </div> | ||||||
|  |  | ||||||
|  | <header> | ||||||
|  | 	<div class="top-right"> | ||||||
|  | 		<span class="txt"> | ||||||
|  | 			<a href="https://www.patreon.com/clonos" target="_blank"><translate>DONATE</translate></a> | ||||||
|  | 			<span class="space"></span> | ||||||
|  | 			<translate>VERSION</translate>: ',file_get_contents($clonos->realpath.'version'); ?> | ||||||
|  | 			<span class="space"></span> | ||||||
|  | 			<translate>THEMES</translate>: | ||||||
|  | 		</span> | ||||||
|  | 		<span class="ch_theme"> | ||||||
|  | 			 <span class="light"></span><span class="dark"></span> | ||||||
|  | 		</span> | ||||||
|  | 	</div> | ||||||
|  | 	<div class="header"> | ||||||
|  | 	<span id="title"><?php echo $menu->title; ?></span> | ||||||
|  | 	<ul> | ||||||
|  | 		<li class="mhome"><a href="/">Home</a></li> | ||||||
|  | <?php // if($clonos->environment=='development') { ?> | ||||||
|  | 		<li><a href="/settings/"><translate>Settings</translate></a></li> | ||||||
|  | <?php // } ?> | ||||||
|  | 		<li><a href="/users/"><translate>Users</translate></a></li> | ||||||
|  | 		<li><a target="_blank" href="/shell/">>><translate>Console</translate></a></li> | ||||||
|  | <!-- | ||||||
|  | 		<li><a href="/profile/"><translate>Profile</translate></a></li> | ||||||
|  | 		<li><a href="/support/"><translate>Support</translate></a></li> | ||||||
|  | --> | ||||||
|  | 		<li><a name=""> | ||||||
|  | 			<select id="lng-sel"> | ||||||
|  | <!--place(config::language)--> | ||||||
|  | <?php | ||||||
|  | foreach(Config::$languages as $lng=>$lngname){ | ||||||
|  | 	$sel = ($lang==$lng) ? ' selected="selected"' : ''; | ||||||
|  | 	echo '				<option value="'.$lng.'"'.$sel.'>'.$lngname.'</option>'.PHP_EOL; | ||||||
|  | } | ||||||
|  | ?> | ||||||
|  | 			</select> | ||||||
|  | 		</a></li> | ||||||
|  | 		<li><a onclick="clonos.logout();" class="link" id="user-login"><!--place(username)--></a></li> | ||||||
|  | 	</ul> | ||||||
|  | 	</div> | ||||||
|  | </header> | ||||||
|  |  | ||||||
|  | <div class="login-area<!--place(login-area-hide)-->"><!--place(dialog:system-login)--> | ||||||
|  | 	<div class="ccopy">ClonOS — is a powerfull system for…</div> | ||||||
|  | 	<div class="ccopy">Cloud computing, Lightweight containerization, Virtualization, etc…</div> | ||||||
|  | </div> | ||||||
|  |  | ||||||
|  | <div class="spinner"></div> | ||||||
|  | <div class="online icon-online" id="net-stat" onclick="ws_debug();"></div> | ||||||
|  | </body> | ||||||
|  | </html> | ||||||
							
								
								
									
										46
									
								
								public/pages/overview/1.orig.index.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								public/pages/overview/1.orig.index.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,46 @@ | |||||||
|  | <div class="row2col"> | ||||||
|  | 	<div class="column"> | ||||||
|  | 		<h1><translate>Summary statistics for cloud:</translate></h1> | ||||||
|  | 		<table class="tfill" style="width:98%;"> | ||||||
|  | 			<thead> | ||||||
|  | 				<tr> | ||||||
|  | 					<td width="200"><translate>Param</translate></td><td width="200"><translate>Values<translate></td> | ||||||
|  | 				</tr> | ||||||
|  | 			</thead> | ||||||
|  | 			<tbody> | ||||||
|  | 				<tr><td><translate>Num of nodes:</translate></td><td id="num-nodes"></td></tr> | ||||||
|  | 				<tr><td><translate>Online nodes:</translate></td><td id="online-nodes"></td></tr> | ||||||
|  | 				<tr><td><translate>Offline nodes:</translate></td><td id="offline-nodes"></td></tr> | ||||||
|  | 				<tr><td><translate>Num of jails:</translate></td><td id="num-jails"></td></tr> | ||||||
|  | 				<tr><td><translate>Num of cores:</translate></td><td id="num-cores"></td></tr> | ||||||
|  | 				<tr><td><translate>Average freq. Mhz:</translate></td><td id="average"></td></tr> | ||||||
|  | 				<tr><td><translate>Summary RAM:</translate></td><td id="sum-ram"></td></tr> | ||||||
|  | 				<tr><td><translate>Summary storage size:</translate></td><td id="sum-storage"></td></tr> | ||||||
|  | 			</tbody> | ||||||
|  | 			<tbody class="error" style="display:none;"> | ||||||
|  | 				<tr><td colspan="2" class="error_message"><translate>Unable to fetch net info!</translate></td></tr> | ||||||
|  | 			</tbody> | ||||||
|  | 		</table> | ||||||
|  | 	</div> | ||||||
|  | 	<div class="column"> | ||||||
|  | 		<h1><translate>Current node CPU usage:</translate></h1> | ||||||
|  | 		<div class="graph g-local-pcpu v-black l-cpu" style="height:100px;width:100%"></div> | ||||||
|  | 		 | ||||||
|  | 		<h1><translate>Current node RAM usage:</translate></h1> | ||||||
|  | 		<div class="graph g-local-pmem v-black l-mem" style="height:100px;width:100%"></div> | ||||||
|  | 	</div> | ||||||
|  | </div> | ||||||
|  |  | ||||||
|  | <p><translate>It is an open source and free product which powered by other project (major importance list):</translate></p> | ||||||
|  | <ul> | ||||||
|  | 	<li><a href="https://github.com/cbsd/cbsd" target="_blank">CBSD Project</a> — <translate>FreeBSD OS virtual environment management framework</translate></li> | ||||||
|  | 	<li><a href="https://www.freebsd.org/" target="_blank">FreeBSD Project</a> —  <translate>FreeBSD  is a free and open source Unix-like operating system descended from Research Unix created in <a href="https://en.wikipedia.org/wiki/Berkeley_Software_Distribution">University of California, Berkeley, U.S.</translate></li> | ||||||
|  | 	<li><a href="https://puppet.com/" target="_blank">Puppet</a> — <translate>Puppet is an open-source configuration management tool.</translate></li> | ||||||
|  | 	<li><translate>and many other..</translate></li> | ||||||
|  | </ul> | ||||||
|  |  | ||||||
|  | <!-- | ||||||
|  | CHAT: | ||||||
|  | <input type="text" id="wsinp" /> | ||||||
|  | <input type="button" onclick="clonos.wssend($('#wsinp').val());$('#wsinp').val('');" value="Send" /> | ||||||
|  | --> | ||||||
							
								
								
									
										3
									
								
								public/pages/overview/_translate.cache/!dont.touch.files
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								public/pages/overview/_translate.cache/!dont.touch.files
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,3 @@ | |||||||
|  | This files is cache of translated pages, do not translate it! | ||||||
|  | If you are a translator, please read the documentation on the translation on the website. | ||||||
|  | Thank you. | ||||||
							
								
								
									
										46
									
								
								public/pages/overview/_translate.cache/ru.index.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								public/pages/overview/_translate.cache/ru.index.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,46 @@ | |||||||
|  | <div class="row2col"> | ||||||
|  | 	<div class="column"> | ||||||
|  | 		<h1>Общая статистика облака:</h1> | ||||||
|  | 		<table class="tfill" style="width:98%;"> | ||||||
|  | 			<thead> | ||||||
|  | 				<tr> | ||||||
|  | 					<td width="200">Параметр</td><td width="200">Values</td> | ||||||
|  | 				</tr> | ||||||
|  | 			</thead> | ||||||
|  | 			<tbody> | ||||||
|  | 				<tr><td>Количество нод:</td><td id="num-nodes"></td></tr> | ||||||
|  | 				<tr><td>Online nodes:</td><td id="online-nodes"></td></tr> | ||||||
|  | 				<tr><td>Offline nodes:</td><td id="offline-nodes"></td></tr> | ||||||
|  | 				<tr><td>Num of jails:</td><td id="num-jails"></td></tr> | ||||||
|  | 				<tr><td>Num of cores:</td><td id="num-cores"></td></tr> | ||||||
|  | 				<tr><td>Average freq. Mhz:</td><td id="average"></td></tr> | ||||||
|  | 				<tr><td>Summary RAM:</td><td id="sum-ram"></td></tr> | ||||||
|  | 				<tr><td>Summary storage size:</td><td id="sum-storage"></td></tr> | ||||||
|  | 			</tbody> | ||||||
|  | 			<tbody class="error" style="display:none;"> | ||||||
|  | 				<tr><td colspan="2" class="error_message">Unable to fetch net info!</td></tr> | ||||||
|  | 			</tbody> | ||||||
|  | 		</table> | ||||||
|  | 	</div> | ||||||
|  | 	<div class="column"> | ||||||
|  | 		<h1>Current node CPU usage:</h1> | ||||||
|  | 		<div class="graph g-local-pcpu v-black l-cpu" style="height:100px;width:100%"></div> | ||||||
|  | 		 | ||||||
|  | 		<h1>Current node RAM usage:</h1> | ||||||
|  | 		<div class="graph g-local-pmem v-black l-mem" style="height:100px;width:100%"></div> | ||||||
|  | 	</div> | ||||||
|  | </div> | ||||||
|  |  | ||||||
|  | <p>It is an open source and free product which powered by other project (major importance list):</p> | ||||||
|  | <ul> | ||||||
|  | 	<li><a href="https://github.com/cbsd/cbsd" target="_blank">CBSD Project</a> — FreeBSD OS virtual environment management framework</li> | ||||||
|  | 	<li><a href="https://www.freebsd.org/" target="_blank">FreeBSD Project</a> —  FreeBSD  is a free and open source Unix-like operating system descended from Research Unix created in <a href="https://en.wikipedia.org/wiki/Berkeley_Software_Distribution">University of California, Berkeley, U.S.</li> | ||||||
|  | 	<li><a href="https://puppet.com/" target="_blank">Puppet</a> — Puppet is an open-source configuration management tool.</li> | ||||||
|  | 	<li>and many other..</li> | ||||||
|  | </ul> | ||||||
|  |  | ||||||
|  | <!-- | ||||||
|  | CHAT: | ||||||
|  | <input type="text" id="wsinp" /> | ||||||
|  | <input type="button" onclick="clonos.wssend($('#wsinp').val());$('#wsinp').val('');" value="Send" /> | ||||||
|  | --> | ||||||
| @@ -1,42 +1,42 @@ | |||||||
| <div class="row2col"> | <div class="row2col"> | ||||||
| 	<div class="column"> | 	<div class="column"> | ||||||
| 		<h1><translate>Summary statistics for cloud:</translate></h1> | 		<h1><translate id="1">Summary statistics for cloud:</translate></h1> | ||||||
| 		<table class="tfill" style="width:98%;"> | 		<table class="tfill" style="width:98%;"> | ||||||
| 			<thead> | 			<thead> | ||||||
| 				<tr> | 				<tr> | ||||||
| 					<td width="200"><translate>Param</translate></td><td width="200"><translate>Values<translate></td> | 					<td width="200"><translate id="2">Param</translate></td><td width="200"><translate>Values<translate></td> | ||||||
| 				</tr> | 				</tr> | ||||||
| 			</thead> | 			</thead> | ||||||
| 			<tbody> | 			<tbody> | ||||||
| 				<tr><td><translate>Num of nodes:</translate></td><td id="num-nodes"></td></tr> | 				<tr><td><translate id="3">Num of nodes:</translate></td><td id="num-nodes"></td></tr> | ||||||
| 				<tr><td><translate>Online nodes:</translate></td><td id="online-nodes"></td></tr> | 				<tr><td><translate id="4">Online nodes:</translate></td><td id="online-nodes"></td></tr> | ||||||
| 				<tr><td><translate>Offline nodes:</translate></td><td id="offline-nodes"></td></tr> | 				<tr><td><translate id="5">Offline nodes:</translate></td><td id="offline-nodes"></td></tr> | ||||||
| 				<tr><td><translate>Num of jails:</translate></td><td id="num-jails"></td></tr> | 				<tr><td><translate id="6">Num of jails:</translate></td><td id="num-jails"></td></tr> | ||||||
| 				<tr><td><translate>Num of cores:</translate></td><td id="num-cores"></td></tr> | 				<tr><td><translate id="7">Num of cores:</translate></td><td id="num-cores"></td></tr> | ||||||
| 				<tr><td><translate>Average freq. Mhz:</translate></td><td id="average"></td></tr> | 				<tr><td><translate id="8">Average freq. Mhz:</translate></td><td id="average"></td></tr> | ||||||
| 				<tr><td><translate>Summary RAM:</translate></td><td id="sum-ram"></td></tr> | 				<tr><td><translate id="9">Summary RAM:</translate></td><td id="sum-ram"></td></tr> | ||||||
| 				<tr><td><translate>Summary storage size:</translate></td><td id="sum-storage"></td></tr> | 				<tr><td><translate id="10">Summary storage size:</translate></td><td id="sum-storage"></td></tr> | ||||||
| 			</tbody> | 			</tbody> | ||||||
| 			<tbody class="error" style="display:none;"> | 			<tbody class="error" style="display:none;"> | ||||||
| 				<tr><td colspan="2" class="error_message"><translate>Unable to fetch net info!</translate></td></tr> | 				<tr><td colspan="2" class="error_message"><translate id="11">Unable to fetch net info!</translate></td></tr> | ||||||
| 			</tbody> | 			</tbody> | ||||||
| 		</table> | 		</table> | ||||||
| 	</div> | 	</div> | ||||||
| 	<div class="column"> | 	<div class="column"> | ||||||
| 		<h1><translate>Current node CPU usage:</translate></h1> | 		<h1><translate id="12">Current node CPU usage:</translate></h1> | ||||||
| 		<div class="graph g-local-pcpu v-black l-cpu" style="height:100px;width:100%"></div> | 		<div class="graph g-local-pcpu v-black l-cpu" style="height:100px;width:100%"></div> | ||||||
| 		 | 		 | ||||||
| 		<h1><translate>Current node RAM usage:</translate></h1> | 		<h1><translate id="13">Current node RAM usage:</translate></h1> | ||||||
| 		<div class="graph g-local-pmem v-black l-mem" style="height:100px;width:100%"></div> | 		<div class="graph g-local-pmem v-black l-mem" style="height:100px;width:100%"></div> | ||||||
| 	</div> | 	</div> | ||||||
| </div> | </div> | ||||||
|  |  | ||||||
| <p><translate>It is an open source and free product which powered by other project (major importance list):</translate></p> | <p><translate id="14">It is an open source and free product which powered by other project (major importance list):</translate></p> | ||||||
| <ul> | <ul> | ||||||
| 	<li><a href="https://github.com/cbsd/cbsd" target="_blank">CBSD Project</a> — <translate>FreeBSD OS virtual environment management framework</translate></li> | 	<li><a href="https://github.com/cbsd/cbsd" target="_blank">CBSD Project</a> — <translate id="15">FreeBSD OS virtual environment management framework</translate></li> | ||||||
| 	<li><a href="https://www.freebsd.org/" target="_blank">FreeBSD Project</a> —  <translate>FreeBSD  is a free and open source Unix-like operating system descended from Research Unix created in <a href="https://en.wikipedia.org/wiki/Berkeley_Software_Distribution">University of California, Berkeley, U.S.</translate></li> | 	<li><a href="https://www.freebsd.org/" target="_blank">FreeBSD Project</a> —  <translate id="16">FreeBSD  is a free and open source Unix-like operating system descended from Research Unix created in <a href="https://en.wikipedia.org/wiki/Berkeley_Software_Distribution">University of California, Berkeley, U.S.</translate></li> | ||||||
| 	<li><a href="https://puppet.com/" target="_blank">Puppet</a> — <translate>Puppet is an open-source configuration management tool.</translate></li> | 	<li><a href="https://puppet.com/" target="_blank">Puppet</a> — <translate id="17">Puppet is an open-source configuration management tool.</translate></li> | ||||||
| 	<li><translate>and many other..</translate></li> | 	<li><translate id="18">and many other..</translate></li> | ||||||
| </ul> | </ul> | ||||||
|  |  | ||||||
| <!-- | <!-- | ||||||
|   | |||||||
| @@ -1 +0,0 @@ | |||||||
| This files is cache of translated pages, do not translate it! |  | ||||||
							
								
								
									
										1
									
								
								public/pages/ru.index.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								public/pages/ru.index.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | |||||||
|  | RU | ||||||
		Reference in New Issue
	
	Block a user
	 olevole
					olevole