new translation mechanism: WIP

This commit is contained in:
olevole
2024-12-13 16:25:30 +03:00
parent 32929b977f
commit 27e0e06daa
142 changed files with 1708 additions and 1047 deletions

4
.gitignore vendored
View File

@@ -9,3 +9,7 @@ public/media/*.size
composer.lock
php/sentry.php
php/vendor
_translate.cache
media_import
__pycache__
vendor

View File

@@ -7,12 +7,16 @@ require_once('forms.php');
require_once('utils.php');
class ClonOS {
const TRANSLATE_CACHE_NAME='_translate.cache';
const BACK_FOLDER_NAME='back';
public $server_name='';
public $workdir='';
public $environment='';
public $realpath='';
public $realpath_php='';
public $realpath_public='';
public $realpath_dialogs='';
public $realpath_page='';
public $uri_chunks=array();
public $json_name='';
@@ -65,6 +69,7 @@ class ClonOS {
$this->realpath=$_real_path.'/'; # /usr/home/web/cp/clonos/
$this->realpath_php=$_real_path.'/php/'; # /usr/home/web/cp/clonos/php/
$this->realpath_public=$_real_path.'/public/'; # /usr/home/web/cp/clonos/public/
$this->realpath_dialogs=$this->realpath_public.'dialogs/'; # /usr/home/web/cp/clonos/public/dialogs/
$this->media_import=$_real_path.'/media_import/';
if($this->environment=='development'){
@@ -104,7 +109,7 @@ class ClonOS {
$this->json_name=$this->realpath_page.'a.json.php';
//echo $this->realpath_page;
}else if($_SERVER['REQUEST_URI']){
/*
if($this->uri_chunks[0]=='overview1')
{
$this->uri_chunks[0]='overview';
@@ -120,7 +125,7 @@ class ClonOS {
echo 'incfile: ',$incfile;exit;
//break 1;
}
*/
//$this->realpath_page=$this->realpath_public.'pages/'.trim($_SERVER['REQUEST_URI'],'/').'/';
if(isset($this->uri_chunks[0])){
$this->realpath_page=$this->realpath_public.'pages/'.$this->uri_chunks[0].'/';
@@ -283,6 +288,94 @@ class ClonOS {
{
return $this->_locale->translate($phrase);
}
function ccmd_trltGo()
{
$dbres=[];
$form=$this->_vars['form_data'];
if(isset($form['phraseID']) && is_numeric($form['phraseID']))
{
$db=new Db('clonos');
if(!$db->isConnected())
return array('error'=>true,'error_message'=>'translate db connection lost!');
$dbres=$db->selectOne(
'SELECT e.text as eng, o.text as oth FROM "lang_en" as e left join "lang_other" as o on e.id=o.en_id where e.id=?',
[[$form['phraseID'],PDO::PARAM_INT]]
);
$dbres['phraseID']=$form['phraseID'];
$dbres['type']=$form['type'];
$dbres['dialog']=$form['dialog'];
}
return $dbres;
}
function ccmd_trltUpdate()
{
$lang=$this->_locale->get_lang();
$form=$this->_vars['form_data'];
switch($form['type'])
{
case 'dialog':
$cache_file_name=$this->realpath_dialogs.ClonOS::TRANSLATE_CACHE_NAME.
DIRECTORY_SEPARATOR.$lang.'.'.$form['dialog'].'.php';
break;
case 'pages':
$cache_file_name=$this->realpath_page.ClonOS::TRANSLATE_CACHE_NAME.
DIRECTORY_SEPARATOR.$lang.'.index.php';
break;
default:
echo $cache_file_name;
exit;
break;
}
if(file_exists($cache_file_name)) unlink($cache_file_name);
//echo $cache_file_name;
//exit;
//echo $file_name;exit;
$db=new Db('clonos');
if(!$db->isConnected())
return array('error'=>true,'error_message'=>'translate db connection error!');
$dbres=$db->update("update lang_other set text=?,lang=? where en_id=?",[
[$form['translText'],PDO::PARAM_STR],
[$lang,PDO::PARAM_STR],
[$form['phraseID'],PDO::PARAM_INT]
]);
//echo '<pre>';print_r($dbres);
if(!isset($dbres['error']))
{
if($dbres['rowCount']==0)
{
$dbres=$db->insert("insert into lang_other (en_id,text,lang) values (?,?,?)",[
[$form['phraseID'],PDO::PARAM_INT],
[$form['translText'],PDO::PARAM_STR],
[$lang,PDO::PARAM_STR]
]);
//print_r($dbres);exit;
if($dbres['error'])
{
return $dbres;
}
$dbres['phraseID']=$dbres['lastID'];
}
}
//$back_file=
return [
'error'=>false,
'rowCount'=>$dbres['rowCount'],
'phraseID'=>$form['phraseID'],
'phrase'=>$form['translText']
];
}
function ccmd_getJsonPage(){
$included_result_array=false;
@@ -2093,7 +2186,10 @@ class ClonOS {
function placeDialogByName($dialog_name=null){
if(is_null($dialog_name)) return;
echo PHP_EOL;
$file_name=$this->realpath_public.'dialogs/'.$dialog_name.'.php';
//$file_name=$this->realpath_public.'dialogs/'.$dialog_name.'.php';
$trres=$this->_translate->translate('dialogs','dialogs/',$dialog_name.'.php');
$file_name=$this->_translate->get_translated_filename();
if(file_exists($file_name)){
include($file_name);
echo PHP_EOL,PHP_EOL;

View File

@@ -387,7 +387,7 @@ class Config
$res1=$cpu+$ram1;
if($min>$res1 || $min==0) {$min=$res1;$min_id=$item['id'];}
$name='<strong>'.$item['name'].'</strong> (cpu: '.$cpu.'; ram: '.$ram.'; hdd: '.$item['pkg_vm_disk'].')';
$name=$item['name'].' (cpu: '.$cpu.'; ram: '.$ram.'; hdd: '.$item['pkg_vm_disk'].')'; # '<strong>'. </strong>
$html.=' <option value="'.$item['id'].'" title="'.$item['description'].'">'.$name.'</option>'.PHP_EOL;
}
return array('html'=>$html,'min_id'=>$min_id);

View File

@@ -8,11 +8,60 @@ class Localization
function __construct($realpath_public)
{
#$_COOKIE['lang']='ru';
$this->realpath=$realpath_public;
(isset($_COOKIE['lang'])) AND $this->language=$_COOKIE['lang'];
(!array_key_exists($this->language, Config::$languages)) AND $this->language='en';
include($realpath_public.'/lang/'.$this->language.'.php');
$this->translate_arr=$lang;
/*
$n=1;
foreach($lang as $eng=>$rus)
{
echo $n,' — ',$eng,"<br>";
$n++;
}
exit;
*/
# Если нужно наполнить базу, то нужно убрать комментарий и запустить страницу
# с параметром /?go=go
/*
if($_GET['go']=='go')
{
#var_dump($lang);
#exit;
$db=new Db('clonos');
if(!$db->isConnected())
{
print_r(['error'=>true,'error_message'=>'db connection lost!']);
exit;
}
foreach($lang as $eng=>$rus)
{
$dbres=$db->insert("insert into lang_en (text) values (?)",[[$eng, PDO::PARAM_STR]]);
if($dbres['error'])
{
print_r(['error'=>true,'error_message'=>$dbres['info']]);
exit;
}
$new_id=$dbres['lastID'];
$dbres=$db->insert("insert into lang_other (en_id,text,lang) values (?,?,?)",[[$new_id],[$rus],['ru']]);
if($dbres['error'])
{
print_r(['error'=>true,'error_message'=>$dbres['info']]);
exit;
}
}
}
echo 'all ok';
exit;
*/
}
public function get_lang()
@@ -32,7 +81,9 @@ class Localization
}
# для отключения ссылок в меню, чтобы можно было его перевести:
# $('ul.menu').on('click',function(event){return false;});
# доделать со временем
class Translate
{
private $locale='';
@@ -57,20 +108,28 @@ class Translate
public function translate($path,$page,$file_name)
{
$translate_cache='_translate.cache';
$backup_dir='back';
switch($path)
{
case 'pages':
$full_path=$this->realpath.$path.DIRECTORY_SEPARATOR.$page.DIRECTORY_SEPARATOR;
$translate_cache_path=$full_path.$translate_cache.DIRECTORY_SEPARATOR;
$backup_path=$full_path.$backup_dir.DIRECTORY_SEPARATOR;
$this->translated_file=$translate_cache_path.$this->language.'.index.php';
//echo $this->translated_file;exit;
break;
case 'dialogs':
$full_path=$this->realpath.$path.DIRECTORY_SEPARATOR;
$translate_cache_path=$full_path.$translate_cache.DIRECTORY_SEPARATOR;
$backup_path=$full_path.$backup_dir.DIRECTORY_SEPARATOR;
$this->translated_file=$translate_cache_path.$this->language.'.'.$file_name;
break;
default:
$path='system';
}
if(!is_dir($full_path)) return;
if(!is_dir($translate_cache_path))
{
mkdir($translate_cache_path);
@@ -82,8 +141,10 @@ class Translate
$file=$full_path.$file_name;
$mtime_translate=0;
$mtime_orig=filemtime($file);
$mtime_translate=filemtime($this->translated_file);
if(file_exists($this->translated_file))
$mtime_translate=filemtime($this->translated_file);
# $mtime_db_update — дата последней модификации перевода в БД
if($mtime_orig<$mtime_translate)
@@ -101,8 +162,8 @@ class Translate
{
$is_changed=false;
$txt=file_get_contents($file);
preg_match_all('#<translate([^>]*)>(.*)</translate>#',$txt,$res,PREG_SET_ORDER);
// var_dump($res);exit;
preg_match_all('#<translate([^>]*)>(.*)</translate>#U',$txt,$res,PREG_SET_ORDER);
//echo '<pre>';var_dump($res);exit;
$ids_arr=[];
@@ -120,6 +181,7 @@ class Translate
{
// если у тэга есть ID, то проверяем текст и формируем шаблон
preg_match_all('#((id)="?([\d]+)"?|update)#',$attrs,$params,PREG_SET_ORDER);
if(is_array($params)) // && $this->language!='en'
{
// ИЗМЕНИТЬ КОММЕНТАРИЙ! --- если у пользователя язык интерфейса не английский, то переводим
@@ -131,13 +193,20 @@ class Translate
if(is_numeric($p[3]))
{
$id=$p[3];
$dbres=$db->selectOne("select text from lang_en where id=?",[[$id,PDO::PARAM_INT]]);
$dbres=$db->selectOne("select text from lang_en where id=? and type in (?,?)",[
[$id,PDO::PARAM_INT],
[$path,PDO::PARAM_STR],
['system',PDO::PARAM_STR]
]);
//var_dump($dbres);
if(!empty($dbres))
{
if($text!=$dbres['text'])
{
// если оригинальный текст изменился, то обновляем его в базе
$dbres1=$db->update('update lang_en set text=? where id=?',[[$text,PDO::PARAM_STR],[$id,PDO::PARAM_INT]]);
# временно отключил, пока наполняется основная база. Потом нужно вернуть обратно
/*
$dbres1=$db->update('update lang_en set text=? where id=? and type=?',[[$text,PDO::PARAM_STR],[$id,PDO::PARAM_INT],[$path,PDO::PARAM_STR]]);
if(isset($dbres1['rowCount']))
{
if($dbres1['rowCount']>0)
@@ -145,11 +214,14 @@ class Translate
$is_changed=true;
}
}
*/
}
}
$ids_arr[]=$id;
}
}
//print_r($ids_arr);exit;
/*
if($p[0]=='update' && $id>0)
{
@@ -170,13 +242,20 @@ delete FROM "lang_en";
VACUUM;
UPDATE SQLITE_SEQUENCE SET seq = 0 WHERE name = 'lang_en'
*/
$dbres=$db->selectOne("select id from lang_en where text=?",[[$text, PDO::PARAM_STR]]); //,[[$text, PDO::PARAM_STR]]);
$dbres=$db->selectOne("select id from lang_en where text=? and type in (?,?)",[
[$text,PDO::PARAM_STR],
[$path,PDO::PARAM_STR],
['system',PDO::PARAM_STR]
]);
if(isset($dbres['error']) && $dbres['error'])
{
echo 'error db: ',$dbres['info'];
exit;
}
//echo $text;
//var_dump($dbres);
//echo '<br>';
if(is_numeric($dbres['id']))
{
// если фраза есть в базе, то вписываем её ID в тэг
@@ -187,7 +266,7 @@ UPDATE SQLITE_SEQUENCE SET seq = 0 WHERE name = 'lang_en'
if($dbres===false)
{
// если фразы нет в базе, то добавляем её туда и вписываем новый ID в тэг
$dbres=$db->insert("insert into lang_en (text) values (?)",[[$text, PDO::PARAM_STR]]);
$dbres=$db->insert("insert into lang_en (text,type) values (?,?)",[[$text, PDO::PARAM_STR],[$path, PDO::PARAM_STR]]);
if($dbres['error'])
return array('error'=>true,'error_message'=>$dbres['info']);
@@ -195,18 +274,29 @@ UPDATE SQLITE_SEQUENCE SET seq = 0 WHERE name = 'lang_en'
$new_text='<translate id="'.$dbres['lastID'].'">'.$text."</translate>";
$txt=str_replace($tag,$new_text,$txt);
$is_changed=true;
//echo $txt;
$ids_arr[]=$dbres['lastID'];
}
}
}
}
// бэкапим предыдущий файл и сохраняем видоизменённый
if($is_changed)
{
rename($full_path.$file_name,$full_path.'_back.'.time().'.'.$file_name);
if(!is_dir($backup_path))
{
mkdir($backup_path);
}
//rename($full_path.$file_name,$full_path.
// $backup_dir.DIRECTORY_SEPARATOR.time().'.'.$file_name);
rename($full_path.$file_name,$backup_path.time().'.'.$file_name);
file_put_contents($full_path.$file_name,$txt);
#echo 'save';
#echo $txt;
#exit;
}
// переводим на другие языки
@@ -222,14 +312,28 @@ UPDATE SQLITE_SEQUENCE SET seq = 0 WHERE name = 'lang_en'
foreach($res as $item)
{
$pat='#<translate id="'.$item['en_id'].'"[^>]*>(.*)</translate>#';
$txt=preg_replace($pat,$item['text'],$txt);
$pat='#<translate id="'.$item['en_id'].'"[^>]*>(.*)</translate>#U';
$txtChg='<span id="trlt-'.$item['en_id'].'">'.$item['text'].'</span>';
$txt=preg_replace($pat,$txtChg,$txt); //'<span id="trlt-'.$item['en_id'].'">'. //.'</span>'
}
$txt=preg_replace('#(<translate([^>]*)>|</translate>)#','',$txt);
//$txt=preg_replace('#(<translate([^>]*)>|</translate>)#','',$txt);
$txt=preg_replace('#<translate id="([\d]+)">#U','<span id="trlt-$1">',$txt);
$txt=str_replace('</translate>','</span>',$txt);
$txt=preg_replace("#title='<span.+>([^\']+)</span>'#U","$1",$txt);
$txt=preg_replace("#(<option[^>]+>)<span[^>]+>(.*)</span>#U","$1$2",$txt);
# чистим кнопки от лишних тэгов
$txt=preg_replace('#<input type="button" value="(<span[^>]+)>(.*?)</span>"#U','<input type="button" value="$2"',$txt);
//echo $txt;
//exit;
//$this->tanslated_file=$translate_cache_path.$this->language.'.index.php';
file_put_contents($this->translated_file,$txt);
#echo $txt;
#exit;
//var_dump($res);
//echo $ids_txt;

View File

@@ -1,3 +1,5 @@
@import url("translate.css");
html {
background:#333;
margin:0;
@@ -109,7 +111,7 @@ header {
height:52px;
background-image: url(/images/main-menu-bg.png);
background-repeat: repeat-x;
background-position-y: 15px;
background-position: 0 15px;
}
.header ul {
height: 52px;

25
public/css/translate.css Normal file
View File

@@ -0,0 +1,25 @@
body.translate span[id*="trlt-"]:hover {
background-color:#faafba;
cursor:help;
color:black;
}
body.translate span[id*="trlt-"]:hover:before {
content:'\01E2';
display:block;
position:absolute;
float:left;
background-color:black;
font-size:8pt;
color:white;
padding:2px 4px;
}
dialog#translates h1 {
color:#337ab7;
font-size:120%;
}
dialog#translates textarea {
height:120px;
}

View File

@@ -1,75 +0,0 @@
<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}$
*/

View File

@@ -1,23 +0,0 @@
<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>

View File

@@ -1,102 +0,0 @@
<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>

View File

@@ -1,84 +0,0 @@
<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

View File

@@ -1,26 +0,0 @@
<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>

View File

@@ -1,36 +0,0 @@
<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>

View File

@@ -1,35 +0,0 @@
<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 &amp; 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>

View File

@@ -1,36 +0,0 @@
<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>

View File

@@ -1,10 +0,0 @@
<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>

View File

@@ -1,75 +0,0 @@
<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}$
*/

View File

@@ -1,9 +0,0 @@
<dialog id="tasklog" class="window-box tasklog">
<h1><?php echo $this->translate('Task log');?></h1>
<div class="window-content">
Task log here&hellip;
</div>
<div class="buttons">
<input type="button" value="<?php echo $this->translate('Close');?>" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,19 +0,0 @@
<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>

View File

@@ -1,9 +0,0 @@
<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>

View File

@@ -1,23 +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: -,.=%");?>',
'vm_name':'<span id="trlt-83">Не может быть пустым. Имя должно начинаться и содержать латинские буквы / a-z / и не должно иметь спец. символы: -,.=% и тд.</span>',
});
</script>
<dialog id="bhyve-clone" class="window-box new">
<h1>
<span class="new"><?php echo $this->translate('Clone Virtual Machine');?></span>
<span class="new"><span id="trlt-255">Clone Virtual Machine</span></span>
</h1>
<h2><?php echo $this->translate('Cloned Virtual Machine Settings');?></h2>
<h2><span id="trlt-256">Cloned Virtual Machine Settings</span></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>
<span class="field-name"><span id="trlt-98">Имя виртуальной машины</span>:</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" />
<input type="button" value="Clone" class="new button ok-but" />
<input type="button" value="Отменить" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,8 +1,8 @@
<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',
'vm_name':'<span id="trlt-83">Не может быть пустым. Имя должно начинаться и содержать латинские буквы / a-z / и не должно иметь спец. символы: -,.=% и тд.</span>',
'vm_size':'<span id="trlt-241">You need type «g» char after numbers</span>',
'vm_ram':'<span id="trlt-241">You need type «g» char after numbers</span>',
});
<?php
//print_r($this->config->os_types);exit;
@@ -10,31 +10,31 @@ err_messages.add({
</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>
<span class="new"><span id="trlt-95">Создание виртуальной машины</span></span>
<span class="edit"><span id="trlt-242">Edit Virtual Machine</span></span>
</h1>
<h2><?php echo $this->translate('Virtual Machine Settings');?></h2>
<h2><span id="trlt-97">Настройки</span></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>
<span class="field-name"><span id="trlt-99">Профиль операционной системы</span>:</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>
<span class="field-name"><span id="trlt-98">Имя виртуальной машины</span>:</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>
<span class="field-name"><span id="trlt-243">VM template (cpu, ram, hdd)</span>:</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="field-name"><span id="trlt-101">Количество виртуальных ядер</span>:</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" />
@@ -42,7 +42,7 @@ err_messages.add({
</span>
</p>
<p>
<span class="field-name"><?php echo $this->translate('VM RAM');?>:</span>
<span class="field-name"><span id="trlt-102">Объём памяти</span>:</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'" />
@@ -50,7 +50,7 @@ err_messages.add({
</span>
</p>
<p class="new">
<span class="field-name"><?php echo $this->translate('VM Image size');?>:</span>
<span class="field-name"><span id="trlt-103">Объём виртуального диска</span>:</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'" />
@@ -58,45 +58,45 @@ err_messages.add({
</span>
</p>
<p>
<span class="field-name"><?php echo $this->translate('Attached boot ISO image');?>:</span>
<span class="field-name"><span id="trlt-244">Attached boot ISO image</span>:</span>
<select name="vm_iso_image">
<option value="-2"></option>
<option value="-1" selected>Profile default ISO</option>
<option value="-1" selected>Профиль по умолчанию ISO</option>
<?php echo $this->media_iso_list_html(); ?>
</select>
</p>
<p>
<span class="field-name"><?php echo $this->translate('VNC IP address');?>:</span>
<span class="field-name"><span id="trlt-246">VNC IP address</span>:</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>
<span class="field-name"><span id="trlt-104">Порт для подключения VNC клиента (0 - авто)</span>:</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>
<span class="field-name"><span id="trlt-247">VNC Password</span>:</span>
<input type="password" name="vm_vnc_password" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> <small>— <span id="trlt-248">use to log in VNC console</span></small>
</p>
<!-- <p>
<span class="field-name"><?php echo $this->translate('CD-ROM ISO');?>:</span>
<span class="field-name"><span id="trlt-249">CD-ROM ISO</span>:</span>
<select name="cd-rom">
<option value="profile">profile</option>
</select>
</p>
--> <p>
<span class="field-name"><?php echo $this->translate('Net Interface');?>:</span>
<span class="field-name"><span id="trlt-64">привязать к сетевому интерфейсу</span>:</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>
<option value="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" />
<input type="button" value="Создать" class="new button ok-but" />
<input type="button" value="Сохранить" class="edit button ok-but" />
<input type="button" value="Отменить" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,34 +1,34 @@
<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>
<h1><span id="trlt-96">Создание из библиотеки</span></h1>
<h2><span id="trlt-97">Настройки</span></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>
<span class="field-name"><span id="trlt-99">Профиль операционной системы</span>:</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>
<span class="field-name"><span id="trlt-98">Имя виртуальной машины</span>:</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>
<span class="field-name"><span id="trlt-243">VM template (cpu, ram, hdd)</span>:</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="field-name"><span id="trlt-101">Количество виртуальных ядер</span>:</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>
<span class="field-name"><span id="trlt-102">Объём памяти</span>:</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'" />
@@ -37,7 +37,7 @@
</p>
<p>
<span class="field-name"><?php echo $this->translate('VM Image size');?>:</span>
<span class="field-name"><span id="trlt-103">Объём виртуального диска</span>:</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'" />
@@ -45,40 +45,40 @@
</span>
</p>
<p>
<span class="field-name"><?php echo $this->translate('IP address');?>:</span>
<span class="field-name"><span id="trlt-61">IP-адрес</span>:</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>
<span class="field-name"><span id="trlt-250">Gateway</span>:</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>
<span class="field-name"><span id="trlt-251">Mask</span>:</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>
<span class="field-name"><span id="trlt-105">Пароль администратора</span>:</span>
<input type="password" name="vm_password" value="cbsd" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> <small>— <span id="trlt-94">по-умолчанию</span>: «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>
<span class="field-name"><span id="trlt-252">USER Password</span>:</span>
<input type="password" name="user_password" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> <small>— <span id="trlt-253">user password (need correct)</span></small>
</p>
<p>
<span class="field-name"><?php echo $this->translate('Authkey');?>:</span>
<span class="field-name"><span id="trlt-100">SSH ключ</span>:</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>
<span class="field-name"><span id="trlt-247">VNC Password</span>:</span>
<input type="password" name="vnc_password" value="cbsd" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> <small>— <span id="trlt-254">use to log in VNC. Default is</span>: 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" />
<input type="button" value="Создать" class="button ok-but" />
<input type="button" value="Отменить" class="button red cancel-but" />
</div>
</dialog>
<?php

View File

@@ -1,26 +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: -,.=%");?>',
'jname':'<span id="trlt-83">Не может быть пустым. Имя должно начинаться и содержать латинские буквы / a-z / и не должно иметь спец. символы: -,.=% и тд.</span>',
});
</script>
<dialog id="bhyve-rename" class="window-box new">
<h1>
<span class="new"><?php echo $this->translate('Rename virtual machine');?></span>
<span class="new"><span id="trlt-257">Rename virtual machine</span></span>
</h1>
<h2><?php echo $this->translate('Renamed Virtual Machine Settings');?></h2>
<h2><span id="trlt-258">Renamed Virtual Machine Settings</span></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@'); ?>
<span id="trlt-120"><strong>ВНИМАНИЕ!</strong> Контейнер запущен. Переименование работает только при выключенном окружении, поэтому данный контейнер предварительно будет остановлен!</span>
</p>
<p>
<span class="field-name"><?php echo $this->translate('VM name');?>:</span>
<span class="field-name"><span id="trlt-259">VM name</span>:</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" />
<input type="button" value="Rename" class="new button ok-but" />
<input type="button" value="Отменить" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,36 +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");?>',
'jname':'<span id="trlt-83">Не может быть пустым. Имя должно начинаться и содержать латинские буквы / a-z / и не должно иметь спец. символы: -,.=% и тд.</span>',
'host_hostname':'<span id="trlt-84">Это поле не может быть пустым</span>',
'ip':'<span id="trlt-85">Укажите корректный IP адрес, например: 10.0.0.2</span>',
});
</script>
<dialog id="jail-clone" class="window-box new">
<h1>
<span class="new"><?php echo $this->translate('Clone jail');?></span>
<span class="new"><span id="trlt-211">Clone jail</span></span>
</h1>
<h2><?php echo $this->translate('Cloned Jail Settings');?></h2>
<h2><span id="trlt-212">Cloned Jail Settings</span></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@'); ?>
<span id="trlt-119"><strong>ВНИМАНИЕ!</strong> Клонирование запущенного контейнера может привести к неконсистентным данным клона (например окружение с активной базой данных). Остановите контейнер для безопасного клонирования или продолжайте, если уверены в безопасности операции!</span>
</p>
<p>
<span class="field-name"><?php echo $this->translate('Jail name');?>:</span>
<span class="field-name"><span id="trlt-58">имя контейнера</span>:</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>
<span class="field-name"><span id="trlt-59">имя хоста</span> (FQDN):</span>
<input type="text" name="host_hostname" value="" required="required" />
</p>
<p>
<span class="field-name"><?php echo $this->translate('IP address');?>:</span>
<span class="field-name"><span id="trlt-61">IP-адрес</span>:</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" />
<input type="button" value="Clone" class="new button ok-but" />
<input type="button" value="Отменить" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,25 +1,25 @@
<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: -,.=%");?>',
'jname':'<span id="trlt-83">Не может быть пустым. Имя должно начинаться и содержать латинские буквы / a-z / и не должно иметь спец. символы: -,.=% и тд.</span>',
});
</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>
<span class="new"><span id="trlt-205">Импорт контейнера</span></span>
<span class="edit"><span id="trlt-56">редактирование параметров контейнера</span></span>
</h1>
<h2><?php echo $this->translate('Jail Import');?></h2>
<h2><span id="trlt-206">Импорт контейнера</span></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 &amp; Drop Files Here</div>
<div class="or">-or-</div>
<div><span id="trlt-207">Перетащите файлы сюда</span></div>
<div class="or"><span id="trlt-208">-или-</span></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'>
<span><span id="trlt-209">Кликните для открытия списка файлов</span></span>
<input type="file" name="jimp_files[]" multiple="multiple" Click to add Files>
</label>
</div>
</div>
@@ -29,7 +29,7 @@ err_messages.add({
</div>
</form>
<div class="buttons">
<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" />
<input type="button" value="Отменить" class="button red cancel-but" />
</div>
</dialog>
<script type="text/javascript">clonos.fileUploadPrepare();</script>

View File

@@ -1,36 +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");?>',
'jname':'<span id="trlt-83">Не может быть пустым. Имя должно начинаться и содержать латинские буквы / a-z / и не должно иметь спец. символы: -,.=% и тд.</span>',
'hostname':'<span id="trlt-84">Это поле не может быть пустым</span>',
'ip':'<span id="trlt-85">Укажите корректный IP адрес, например: 10.0.0.2</span>',
});
</script>
<dialog id="jail-rename" class="window-box new">
<h1>
<span class="new"><?php echo $this->translate('Rename jail');?></span>
<span class="new"><span id="trlt-214">Rename jail</span></span>
</h1>
<h2><?php echo $this->translate('Renamed Jail Settings');?></h2>
<h2><span id="trlt-215">Renamed Jail Settings</span></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@'); ?>
<span id="trlt-120"><strong>ВНИМАНИЕ!</strong> Контейнер запущен. Переименование работает только при выключенном окружении, поэтому данный контейнер предварительно будет остановлен!</span>
</p>
<p>
<span class="field-name"><?php echo $this->translate('Jail name');?>:</span>
<span class="field-name"><span id="trlt-58">имя контейнера</span>:</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>
<span class="field-name"><span id="trlt-59">имя хоста</span> (FQDN):</span>
<input type="text" name="host_hostname" value="" required="required" />
</p>
<p>
<span class="field-name"><?php echo $this->translate('IP address');?>:</span>
<span class="field-name"><span id="trlt-61">IP-адрес</span>:</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" />
<input type="button" value="Rename" class="new button ok-but" />
<input type="button" value="Отменить" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,10 +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>
<li class="icon-edit" id="jddm-rename"> <span id="trlt-93">переименовать</span></li>
<li class="icon-pencil" id="jddm-edit"> <span id="trlt-89">редактировать</span></li>
<li class="icon-docs" id="jddm-clone"> <span id="trlt-90">клонировать</span></li>
<li class="icon-gift" id="jddm-export"> <span id="trlt-91">экспортировать</span></li>
<li class="icon-cubes" id="jddm-helpers"> <span id="trlt-92">хелперы</span></li>
</ul>
</div>

View File

@@ -1,60 +1,60 @@
<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',
'jname':'<span id="trlt-83">Не может быть пустым. Имя должно начинаться и содержать латинские буквы / a-z / и не должно иметь спец. символы: -,.=% и тд.</span>',
'hostname':'<span id="trlt-84">Это поле не может быть пустым</span>',
'ip':'<span id="trlt-85">Укажите корректный IP адрес, например: 10.0.0.2</span>',
'rootpass':'<span id="trlt-86">Пароль не должен быть меньше трех символов</span>',
'rootpass1':'<span id="trlt-87">Повторите пароль правильно</span>',
});
</script>
<dialog id="jail-settings" class="window-box new">
<h1>
<span class="new">Create jail</span>
<span class="edit">Edit jail</span>
<span class="new"><span id="trlt-55">создание контейнера</span></span>
<span class="edit"><span id="trlt-56">редактирование параметров контейнера</span></span>
</h1>
<h2>Jail Settings</h2>
<h2><span id="trlt-57">настройки контейнера</span></h2>
<form class="win" method="post" id="jailSettings" onsubmit="return false;">
<div class="window-content">
<p>
<span class="field-name">Имя контейнера:</span>
<span class="field-name"><span id="trlt-58">имя контейнера</span>:</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>
<span class="field-name"><span id="trlt-59">имя хоста</span> (FQDN):</span>
<input type="text" name="host_hostname" value="" required="required" />
<!--
<small class="astart-warn"> available on the jail is not running</small>
<small class="astart-warn"> <span id="trlt-60">доступно при остановленном контейнере</span></small>
-->
</p>
<p>
<span class="field-name">IP address:</span>
<span class="field-name"><span id="trlt-61">IP-адрес</span>:</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>
<span class="field-name"><span id="trlt-62">пароль пользователя ROOT (опционально)</span>:</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>
<span class="field-name"><span id="trlt-63">пароль пользователя ROOT (повтор)</span>:</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>
<span class="field-name"><span id="trlt-64">привязать к сетевому интерфейсу</span>:</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>
<span class="field-name"><span id="trlt-65">параметры</span>:</span>
<input type="checkbox" name="baserw" id="bwritable-id" /><label for="bwritable-id"> <span id="trlt-68">R/W базовой системы</span>?</label>
<br />
<input type="checkbox" name="mount_ports" id="mount-id" /><label for="mount-id"> Mount /usr/ports?</label>
<input type="checkbox" name="mount_ports" id="mount-id" /><label for="mount-id"> <span id="trlt-70">примонтировать</span> /usr/ports?</label>
<br />
<input type="checkbox" name="astart" id="astart-id" /><label for="astart-id"> Autostart jail at system startup</label>
<input type="checkbox" name="astart" id="astart-id" /><label for="astart-id"> <span id="trlt-67">автозапуск контейнера при загрузке системы</span></label>
<br />
<input type="checkbox" name="vnet" id="vnet-id" /><label for="vnet-id"> Virtual network stack (VIMAGE)</label>
<input type="checkbox" name="vnet" id="vnet-id" /><label for="vnet-id"> <span id="trlt-69">виртуальный сетевой стек (VIMAGE)</span></label>
</p>
<p class="new">
<span class="field-name">Enabled services:</span>
<span class="field-name"><span id="trlt-71">автозапуск сервисов</span>:</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>
@@ -62,9 +62,9 @@ err_messages.add({
</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" />
<input type="button" value="Создать" class="new button ok-but" />
<input type="button" value="Сохранить" class="edit button ok-but" />
<input type="button" value="Отменить" class="button red cancel-but" />
</div>
</dialog>
<?php

View File

@@ -1,9 +1,9 @@
<dialog id="tasklog" class="window-box tasklog">
<h1><?php echo $this->translate('Task log');?></h1>
<h1><span id="trlt-347">Task log</span></h1>
<div class="window-content">
Task log here&hellip;
<span id="trlt-348">Task log here&hellip;</span>
</div>
<div class="buttons">
<input type="button" value="<?php echo $this->translate('Close');?>" class="button red cancel-but" />
<input type="button" value="Закрыть" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -10,8 +10,8 @@
<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>
<span class="icon-spin5 animate-spin"></span><span id="trlt-129">Пожалуйста, подождите пока инициализируется виртуальная машина</span>
<br /><small style="display: block;font-size: small;margin-top: 20px;"><span id="trlt-130">Вы можете кликнуть сюда или подождать</span>: <span id="vnc-countdown"><span id="trlt-131">некоторое время</span></span></small>
</div>
</div>
</div>

View File

@@ -1,25 +1,25 @@
<script type="text/javascript">
err_messages.add({
'keyname':'<?php echo $this->translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>',
'keyname':'<translate id="83">Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%</translate>',
});
</script>
<dialog id="authkey" class="window-box">
<h1><?php echo $this->translate('Create Authkey');?></h1>
<h2><?php echo $this->translate('Settings');?></h2>
<h1><translate id="106">Create Authkey</translate></h1>
<h2><translate id="1">Settings</translate></h2>
<form class="win" method="post" id="authkeySettings" onsubmit="return false;">
<div class="window-content">
<p>
<span class="field-name"><?php echo $this->translate('Authkey name');?>:</span>
<span class="field-name"><translate id="107">Authkey name</translate>:</span>
<input type="text" name="keyname" value="" pattern="[\x20-\x21\x23-\x26\x28-\x7F]+" required="required" />
</p>
<p>
<span class="field-name"><?php echo $this->translate('Authkey');?>:</span>
<span class="field-name"><translate id="100">Authkey</translate>:</span>
<textarea name="keysrc" rows="10"></textarea>
</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" />
<input type="button" value="<translate id="72">Create</translate>" class="button ok-but" />
<input type="button" value="<translate id="73">Cancel</translate>" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -0,0 +1,20 @@
<dialog id="login" class="window-box">
<div class="login-wait hide"><div class="loadersmall"></div></div>
<div class="login-error-nouser hide"><span class="icon-attention" style="font-size:large;"></span> <translate>Error! User not found!</translate></div>
<div class="login-header"><span class="icon-expeditedssl"></span><translate>Login</translate></div>
<form class="win" method="post" id="loginData" onsubmit="return false;">
<div class="window-content">
<p>
<span class="field-name"><translate>Login</translate>:</span>
<input type="text" name="login" value="" autofocus />
</p>
<p>
<span class="field-name"><translate>Password</translate>:</span>
<input type="password" name="password" value="" />
</p>
</div>
</form>
<div class="buttons">
<input type="button" value="<translate>Go to the system</translate>" class="button ok-but" />
</div>
</dialog>

View File

@@ -0,0 +1,27 @@
<dialog id="translates" class="window-box new">
<h1>
<translate>Translate</translate>
</h1>
<h2><translate>Translate phrase</translate></h2>
<form class="win" method="post" id="translate" onsubmit="return false;">
<div class="window-content">
<p>
Вы можете поучаствовать в переводе интерфейса на свой язык.
</p>
<p>
<span class="field-name"><translate>Original phrase</translate>:</span>
<textarea id="origPhrase" disabled="disabled" name="origText"></textarea>
</p>
<p class="new">
<span class="field-name"><translate>Translated phrase</translate>:</span>
<textarea id="translPhrase" name="translText"></textarea>
</p>
</div>
<input type="hidden" name="phraseID" id="trlt-phID" />
<input type="hidden" name="type" id="trlt-type" />
</form>
<div class="buttons">
<input type="button" value="Save" class="new button ok-but" />
<input type="button" value="Cancel" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -0,0 +1,28 @@
<dialog id="translates" class="window-box new">
<h1>
<translate>Translate</translate>
</h1>
<h2><translate>Translate phrase</translate></h2>
<form class="win" method="post" id="translate" onsubmit="return false;">
<div class="window-content">
<p>
Вы можете поучаствовать в переводе интерфейса на свой язык.
</p>
<p>
<span class="field-name"><translate>Original phrase</translate>:</span>
<textarea id="origPhrase" disabled="disabled" name="origText"></textarea>
</p>
<p class="new">
<span class="field-name"><translate>Translated phrase</translate>:</span>
<textarea id="translPhrase" name="translText"></textarea>
</p>
</div>
<input type="hidden" name="phraseID" id="trlt-phID" />
<input type="hidden" name="type" id="trlt-type" />
<input type="hidden" name="dialog" id="trlt-type" />
</form>
<div class="buttons">
<input type="button" value="Save" class="new button ok-but" />
<input type="button" value="Cancel" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -0,0 +1,28 @@
<dialog id="translates" class="window-box new">
<h1>
<translate>Translate</translate>
</h1>
<h2><translate>Translate phrase</translate></h2>
<form class="win" method="post" id="translate" onsubmit="return false;">
<div class="window-content">
<p>
Вы можете поучаствовать в переводе интерфейса на свой язык.
</p>
<p>
<span class="field-name"><translate>Original phrase</translate>:</span>
<textarea id="origPhrase" disabled="disabled" name="origText"></textarea>
</p>
<p class="new">
<span class="field-name"><translate>Translated phrase</translate>:</span>
<textarea id="translPhrase" name="translText"></textarea>
</p>
</div>
<input type="hidden" name="phraseID" id="trlt-phID" />
<input type="hidden" name="type" id="trlt-type" />
<input type="hidden" name="dialog" id="trlt-dlgname" />
</form>
<div class="buttons">
<input type="button" value="Save" class="new button ok-but" />
<input type="button" value="Cancel" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,38 +1,38 @@
<script type="text/javascript">
err_messages.add({
'version':'<?php echo $this->translate("Can not be empty. Name must be with a numbers and dot symbol");?>',
'version':'<translate id="323">Can not be empty. Name must be with a numbers and dot symbol</translate>',
});
src_table_pattern='<?php $res=$this->getTableChunk('baseslist','tbody'); echo str_replace(array("\n","\r","\t"),'',$res[1]);?>';
</script>
<dialog id="getrepo" class="window-box">
<h1><?php echo $this->translate('Compile FreeBSD');?></h1>
<h2><?php echo $this->translate('Compile from bases');?></h2>
<h1><translate id="324">Compile FreeBSD</translate></h1>
<h2><translate id="328">Compile from bases</translate></h2>
<form class="win" method="post" id="repoSettings" onsubmit="return false;">
<div class="window-content">
<p>
<span class="field-name"><?php echo $this->translate('Version number');?>:</span>
<span class="field-name"><translate id="117">Version number</translate>:</span>
<input type="text" name="version" value="" pattern="[0-9.]{1,5}" required="required" maxlength="5" />
</p>
<!--
<p>
<span class="field-name"><?php echo $this->translate('Version');?>:</span>
<span class="field-name"><translate id="116">Version</translate>:</span>
<input type="radio" name="version" value="release" id="ver1" checked="checked" class="inline"><label for="ver1">Release</label></radio>
<input type="radio" name="version" value="stable" id="ver2" class="inline"><label for="ver2">Stable</label></radio>
</p>
-->
<p>
<span class="field-name"><?php echo $this->translate('Repository');?>:</span>
<span class="field-name"><translate id="26">Repository</translate>:</span>
<select name="repository" disabled="disabled">
<option value="official"><?php echo $this->translate('Official FreeBSD repository (svn)');?></option>
<option value="clonos" selected="selected"><?php echo $this->translate('Clonos repository');?></option>
<option value="own"><?php echo $this->translate('Your own repository');?></option>
<option value="neighbor"><?php echo $this->translate('Neighbor node');?></option>
<option value="official"><translate id="329">Official FreeBSD repository (svn)</translate></option>
<option value="clonos" selected="selected"><translate id="327">Clonos repository</translate></option>
<option value="own"><translate id="330">Your own repository</translate></option>
<option value="neighbor"><translate id="331">Neighbor node</translate></option>
</select>
</p>
</div>
</form>
<div class="buttons">
<input type="button" value="<?php echo $this->translate('Get');?>" class="button ok-but" />
<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" />
<input type="button" value="<translate id="112">Get</translate>" class="button ok-but" />
<input type="button" value="<translate id="73">Cancel</translate>" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,30 +1,30 @@
<script type="text/javascript">
err_messages.add({
'version':'<?php echo $this->translate("Can not be empty. Name must be with a numbers and dot symbol");?>',
'version':'<translate id="323">Can not be empty. Name must be with a numbers and dot symbol</translate>',
});
src_table_pattern='<?php $res=$this->getTableChunk('baseslist','tbody'); echo str_replace(array("\n","\r","\t"),'',$res[1]);?>';
</script>
<dialog id="basescompile" class="window-box">
<h1><?php echo $this->translate('Compile FreeBSD');?></h1>
<h2><?php echo $this->translate('Compile from sources');?></h2>
<h1><translate id="324">Compile FreeBSD</translate></h1>
<h2><translate id="325">Compile from sources</translate></h2>
<form class="win" method="post" id="basesSettings" onsubmit="return false;">
<div class="window-content">
<p>
<span class="field-name"><?php echo $this->translate('Sources version');?>:</span>
<span class="field-name"><translate id="326">Sources version</translate>:</span>
<select name="sources">
<?php $this->getBasesCompileList(); ?>
</select>
</p>
<p>
<span class="field-name"><?php echo $this->translate('Source');?>:</span>
<span class="field-name"><translate id="118">Source</translate>:</span>
<select name="repository" disabled="disabled">
<option value="clonos"><?php echo $this->translate('Clonos repository');?></option>
<option value="clonos"><translate id="327">Clonos repository</translate></option>
</select>
</p>
</div>
</form>
<div class="buttons">
<input type="button" value="<?php echo $this->translate('Get');?>" class="button ok-but" />
<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" />
<input type="button" value="<translate id="112">Get</translate>" class="button ok-but" />
<input type="button" value="<translate id="73">Cancel</translate>" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,23 +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: -,.=%");?>',
'vm_name':'<translate id="83">Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%</translate>',
});
</script>
<dialog id="bhyve-clone" class="window-box new">
<h1>
<span class="new"><?php echo $this->translate('Clone Virtual Machine');?></span>
<span class="new"><translate id="255">Clone Virtual Machine</translate></span>
</h1>
<h2><?php echo $this->translate('Cloned Virtual Machine Settings');?></h2>
<h2><translate id="256">Cloned Virtual Machine Settings</translate></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>
<span class="field-name"><translate id="98">Virtual Machine name</translate>:</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" />
<input type="button" value="<translate id="213">Clone</translate>" class="new button ok-but" />
<input type="button" value="<translate id="73">Cancel</translate>" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,8 +1,8 @@
<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',
'vm_name':'<translate id="83">Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%</translate>',
'vm_size':'<translate id="241">You need type «g» char after numbers</translate>',
'vm_ram':'<translate id="241">You need type «g» char after numbers</translate>',
});
<?php
//print_r($this->config->os_types);exit;
@@ -10,31 +10,31 @@ err_messages.add({
</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>
<span class="new"><translate id="95">Create Virtual Machine</translate></span>
<span class="edit"><translate id="242">Edit Virtual Machine</translate></span>
</h1>
<h2><?php echo $this->translate('Virtual Machine Settings');?></h2>
<h2><translate id="97">Virtual Machine Settings</translate></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>
<span class="field-name"><translate id="99">VM OS profile</translate>:</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>
<span class="field-name"><translate id="98">Virtual Machine name</translate>:</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>
<span class="field-name"><translate id="243">VM template (cpu, ram, hdd)</translate>:</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="field-name"><translate id="101">VM CPUs</translate>:</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" />
@@ -42,7 +42,7 @@ err_messages.add({
</span>
</p>
<p>
<span class="field-name"><?php echo $this->translate('VM RAM');?>:</span>
<span class="field-name"><translate id="102">VM RAM</translate>:</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'" />
@@ -50,7 +50,7 @@ err_messages.add({
</span>
</p>
<p class="new">
<span class="field-name"><?php echo $this->translate('VM Image size');?>:</span>
<span class="field-name"><translate id="103">VM Image size</translate>:</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'" />
@@ -58,45 +58,45 @@ err_messages.add({
</span>
</p>
<p>
<span class="field-name"><?php echo $this->translate('Attached boot ISO image');?>:</span>
<span class="field-name"><translate id="244">Attached boot ISO image</translate>:</span>
<select name="vm_iso_image">
<option value="-2"></option>
<option value="-1" selected>Profile default ISO</option>
<option value="-1" selected><translate id="245">Profile default ISO</translate></option>
<?php echo $this->media_iso_list_html(); ?>
</select>
</p>
<p>
<span class="field-name"><?php echo $this->translate('VNC IP address');?>:</span>
<span class="field-name"><translate id="246">VNC IP address</translate>:</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>
<span class="field-name"><translate id="104">VNC PORT</translate>:</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>
<span class="field-name"><translate id="247">VNC Password</translate>:</span>
<input type="password" name="vm_vnc_password" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> <small>— <translate id="248">use to log in VNC console</translate></small>
</p>
<!-- <p>
<span class="field-name"><?php echo $this->translate('CD-ROM ISO');?>:</span>
<span class="field-name"><translate id="249">CD-ROM ISO</translate>:</span>
<select name="cd-rom">
<option value="profile">profile</option>
</select>
</p>
--> <p>
<span class="field-name"><?php echo $this->translate('Net Interface');?>:</span>
<span class="field-name"><translate id="64">Net Interface</translate>:</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>
<option value="auto"><translate id="160">auto</translate></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" />
<input type="button" value="<translate id="72">Create</translate>" class="new button ok-but" />
<input type="button" value="<translate id="74">Save</translate>" class="edit button ok-but" />
<input type="button" value="<translate id="73">Cancel</translate>" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,34 +1,34 @@
<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>
<h1><translate id="96">Create Virtual Machine from Library</translate></h1>
<h2><translate id="97">Virtual Machine Settings</translate></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>
<span class="field-name"><translate id="99">VM OS profile</translate>:</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>
<span class="field-name"><translate id="98">Virtual Machine name</translate>:</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>
<span class="field-name"><translate id="243">VM template (cpu, ram, hdd)</translate>:</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="field-name"><translate id="101">VM CPUs</translate>:</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>
<span class="field-name"><translate id="102">VM RAM</translate>:</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'" />
@@ -37,7 +37,7 @@
</p>
<p>
<span class="field-name"><?php echo $this->translate('VM Image size');?>:</span>
<span class="field-name"><translate id="103">VM Image size</translate>:</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'" />
@@ -45,40 +45,40 @@
</span>
</p>
<p>
<span class="field-name"><?php echo $this->translate('IP address');?>:</span>
<span class="field-name"><translate id="61">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>
<span class="field-name"><?php echo $this->translate('Gateway');?>:</span>
<span class="field-name"><translate id="250">Gateway</translate>:</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>
<span class="field-name"><translate id="251">Mask</translate>:</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>
<span class="field-name"><translate id="105">VM Password</translate>:</span>
<input type="password" name="vm_password" value="cbsd" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> <small>— <translate id="94">default is</translate>: «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>
<span class="field-name"><translate id="252">USER Password</translate>:</span>
<input type="password" name="user_password" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> <small>— <translate id="253">user password (need correct)</translate></small>
</p>
<p>
<span class="field-name"><?php echo $this->translate('Authkey');?>:</span>
<span class="field-name"><translate id="100">Authkey</translate>:</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>
<span class="field-name"><translate id="247">VNC Password</translate>:</span>
<input type="password" name="vnc_password" value="cbsd" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20"></input> <small>— <translate id="254">use to log in VNC. Default is</translate>: 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" />
<input type="button" value="<translate id="72">Create</translate>" class="button ok-but" />
<input type="button" value="<translate id="73">Cancel</translate>" class="button red cancel-but" />
</div>
</dialog>
<?php

View File

@@ -1,26 +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: -,.=%");?>',
'jname':'<translate id="83">Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%</translate>',
});
</script>
<dialog id="bhyve-rename" class="window-box new">
<h1>
<span class="new"><?php echo $this->translate('Rename virtual machine');?></span>
<span class="new"><translate id="257">Rename virtual machine</translate></span>
</h1>
<h2><?php echo $this->translate('Renamed Virtual Machine Settings');?></h2>
<h2><translate id="258">Renamed Virtual Machine Settings</translate></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@'); ?>
<translate id="120">@rename_warning@</translate>
</p>
<p>
<span class="field-name"><?php echo $this->translate('VM name');?>:</span>
<span class="field-name"><translate id="259">VM name</translate>:</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" />
<input type="button" value="<translate id="216">Rename</translate>" class="new button ok-but" />
<input type="button" value="<translate id="73">Cancel</translate>" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,13 +1,13 @@
<dialog id="helpers-add" class="window-box new">
<h1>
<span class="new"><?php echo $this->translate('Helpers add');?></span>
<span class="new"><translate>Helpers add</translate></span>
</h1>
<h2><?php echo $this->translate('Select helpers for install');?></h2>
<h2><translate>Select helpers for install</translate></h2>
<form class="win" method="post" id="helpersAddSettings" onsubmit="return false;">
<div class="window-content"></div>
</form>
<div class="buttons">
<input type="button" value="<?php echo $this->translate('Add');?>" class="new button ok-but" />
<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" />
<input type="button" value="<translate>Add</translate>" class="new button ok-but" />
<input type="button" value="<translate>Cancel</translate>" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,36 +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");?>',
'jname':'<translate id="83">Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%</translate>',
'hostname':'<translate id="84">This field can not be empty</translate>',
'ip':'<translate id="85">Write correct ip address, e.g: 10.0.0.2</translate>',
});
</script>
<dialog id="image-import" class="window-box new">
<h1>
<span class="new"><?php echo $this->translate('Image Import');?></span>
<!-- <span class="edit"><?php echo $this->translate('Edit jail');?></span> -->
<span class="new"><translate id="312">Image Import</translate></span>
<!-- <span class="edit"><translate id="56">Edit jail</translate></span> -->
</h1>
<h2><?php echo $this->translate('Settings');?></h2>
<h2><translate id="1">Settings</translate></h2>
<form class="win" method="post" id="imageImportSettings" onsubmit="return false;">
<div class="window-content">
<p>
<span class="field-name"><?php echo $this->translate('New name');?>:</span>
<span class="field-name"><translate id="313">New name</translate>:</span>
<input type="text" name="jname" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{2,}" required="required" class="edit-disable" />
<div class="inp_comment" id="name_comment"></div>
</p>
<p>
<span class="field-name"><?php echo $this->translate('Hostname');?> (FQDN):</span>
<span class="field-name"><translate id="59">Hostname</translate> (FQDN):</span>
<input type="text" name="host_hostname" value="" required="required" />
</p>
<p>
<span class="field-name"><?php echo $this->translate('IP address');?>:</span>
<span class="field-name"><translate id="61">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>
<input type="hidden" name="file_id" value="" />
</div>
</form>
<div class="buttons">
<input type="button" value="<?php echo $this->translate('Import');?>" class="new button ok-but" />
<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" />
<input type="button" value="<translate id="314">Import</translate>" class="new button ok-but" />
<input type="button" value="<translate id="73">Cancel</translate>" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,36 +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");?>',
'jname':'<translate id="83">Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%</translate>',
'host_hostname':'<translate id="84">This field can not be empty</translate>',
'ip':'<translate id="85">Write correct ip address, e.g: 10.0.0.2</translate>',
});
</script>
<dialog id="jail-clone" class="window-box new">
<h1>
<span class="new"><?php echo $this->translate('Clone jail');?></span>
<span class="new"><translate id="211">Clone jail</translate></span>
</h1>
<h2><?php echo $this->translate('Cloned Jail Settings');?></h2>
<h2><translate id="212">Cloned Jail Settings</translate></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@'); ?>
<translate id="119">@clone_warning@</translate>
</p>
<p>
<span class="field-name"><?php echo $this->translate('Jail name');?>:</span>
<span class="field-name"><translate id="58">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"><?php echo $this->translate('Hostname');?> (FQDN):</span>
<span class="field-name"><translate id="59">Hostname</translate> (FQDN):</span>
<input type="text" name="host_hostname" value="" required="required" />
</p>
<p>
<span class="field-name"><?php echo $this->translate('IP address');?>:</span>
<span class="field-name"><translate id="61">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>
</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" />
<input type="button" value="<translate id="213">Clone</translate>" class="new button ok-but" />
<input type="button" value="<translate id="73">Cancel</translate>" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,25 +1,25 @@
<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: -,.=%");?>',
'jname':'<translate id="83">Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%</translate>',
});
</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>
<span class="new"><translate id="205">Import jail</translate></span>
<span class="edit"><translate id="56">Edit jail</translate></span>
</h1>
<h2><?php echo $this->translate('Jail Import');?></h2>
<h2><translate id="206">Jail Import</translate></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 &amp; Drop Files Here</div>
<div class="or">-or-</div>
<div><translate id="207">Drag &amp; Drop Files Here</translate></div>
<div class="or"><translate id="208">-or-</translate></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'>
<span><translate id="209">Click to open the file Browser</translate></span>
<input type="file" name="jimp_files[]" multiple="multiple" title='<translate id="210">Click to add Files</translate>'>
</label>
</div>
</div>
@@ -29,7 +29,7 @@ err_messages.add({
</div>
</form>
<div class="buttons">
<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" />
<input type="button" value="<translate id="73">Cancel</translate>" class="button red cancel-but" />
</div>
</dialog>
<script type="text/javascript">clonos.fileUploadPrepare();</script>

View File

@@ -1,36 +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");?>',
'jname':'<translate id="83">Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%</translate>',
'hostname':'<translate id="84">This field can not be empty</translate>',
'ip':'<translate id="85">Write correct ip address, e.g: 10.0.0.2</translate>',
});
</script>
<dialog id="jail-rename" class="window-box new">
<h1>
<span class="new"><?php echo $this->translate('Rename jail');?></span>
<span class="new"><translate id="214">Rename jail</translate></span>
</h1>
<h2><?php echo $this->translate('Renamed Jail Settings');?></h2>
<h2><translate id="215">Renamed Jail Settings</translate></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@'); ?>
<translate id="120">@rename_warning@</translate>
</p>
<p>
<span class="field-name"><?php echo $this->translate('Jail name');?>:</span>
<span class="field-name"><translate id="58">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"><?php echo $this->translate('Hostname');?> (FQDN):</span>
<span class="field-name"><translate id="59">Hostname</translate> (FQDN):</span>
<input type="text" name="host_hostname" value="" required="required" />
</p>
<p>
<span class="field-name"><?php echo $this->translate('IP address');?>:</span>
<span class="field-name"><translate id="61">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>
</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" />
<input type="button" value="<translate id="216">Rename</translate>" class="new button ok-but" />
<input type="button" value="<translate id="73">Cancel</translate>" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,10 +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>
<li class="icon-edit" id="jddm-rename"> <translate id="93">rename</translate></li>
<li class="icon-pencil" id="jddm-edit"> <translate id="89">edit</translate></li>
<li class="icon-docs" id="jddm-clone"> <translate id="90">clone</translate></li>
<li class="icon-gift" id="jddm-export"> <translate id="91">export</translate></li>
<li class="icon-cubes" id="jddm-helpers"> <translate id="92">helpers</translate></li>
</ul>
</div>

View File

@@ -1,60 +1,60 @@
<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>',
'jname':'<translate id="83">Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%</translate>',
'hostname':'<translate id="84">This field can not be empty</translate>',
'ip':'<translate id="85">Write correct ip address, e.g: 10.0.0.2</translate>',
'rootpass':'<translate id="86">Password can not be less than 3 symbols</translate>',
'rootpass1':'<translate id="87">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>
<span class="new"><translate id="55">Create jail</translate></span>
<span class="edit"><translate id="56">Edit jail</translate></span>
</h1>
<h2><translate id="26">Jail Settings</translate></h2>
<h2><translate id="57">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>
<span class="field-name"><translate id="58">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>
<span class="field-name"><translate id="59">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>
<small class="astart-warn"> <translate id="60">available on the jail is not running</translate></small>
-->
</p>
<p>
<span class="field-name"><translate id="30">IP address</translate>:</span>
<span class="field-name"><translate id="61">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>
<span class="field-name"><translate id="62">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>
<span class="field-name"><translate id="63">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>
<span class="field-name"><translate id="64">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>
<span class="field-name"><translate id="65">Parameters</translate>:</span>
<input type="checkbox" name="baserw" id="bwritable-id" /><label for="bwritable-id"> <translate id="68">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>
<input type="checkbox" name="mount_ports" id="mount-id" /><label for="mount-id"> <translate id="70">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>
<input type="checkbox" name="astart" id="astart-id" /><label for="astart-id"> <translate id="67">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>
<input type="checkbox" name="vnet" id="vnet-id" /><label for="vnet-id"> <translate id="69">Virtual network stack (VIMAGE)</translate></label>
</p>
<p class="new">
<span class="field-name"><translate id="39">Enabled services</translate>:</span>
<span class="field-name"><translate id="71">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>
@@ -62,9 +62,9 @@ err_messages.add({
</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 id="42">Cancel</translate>" class="button red cancel-but" />
<input type="button" value="<translate id="72">Create</translate>" class="new button ok-but" />
<input type="button" value="<translate id="74">Save</translate>" class="edit button ok-but" />
<input type="button" value="<translate id="73">Cancel</translate>" class="button red cancel-but" />
</div>
</dialog>
<?php

View File

@@ -1,42 +1,42 @@
<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_name':'<translate id="83">Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%</translate>',
});
</script>
<dialog id="k8s-new" class="window-box new">
<h1>
<span class="new"><?php echo $this->translate('Create Kubernetes');?></span>
<span class="new"><translate id="282">Create Kubernetes</translate></span>
</h1>
<h2><?php echo $this->translate('create master node and workers');?></h2>
<h2><translate id="283">create master node and workers</translate></h2>
<form class="win" method="post" id="k8sNewSettings" onsubmit="return false;">
<div class="window-content">
<p>
<span class="field-name"><?php echo $this->translate('Cluster name');?>:</span>
<span class="field-name"><translate id="284">Cluster name</translate>:</span>
<input type="text" name="cname" 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('Master Nodes count');?>:</span>
<span class="field-name"><translate id="285">Master Nodes count</translate>:</span>
<span class="range">
<input type="range" name="master_nodes" class="vHorizon" min="1" max="7" value="1" style="margin:6px 0;" id="rngMNodes" oninput="rngMNodesShow.value=rngMNodes.value">
<input type="text" disabled="disabled" id="rngMNodesShow" value="1" name="master_cpus_count">
</span>
</p>
<p>
<span class="field-name"><?php echo $this->translate('Master Nodes RAM size');?>:</span>
<span class="field-name"><translate id="286">Master Nodes RAM size</translate>:</span>
<span class="range">
<input type="range" name="master_ram" class="vHorizon" min="1" max="8" value="1" style="margin:6px 0;" id="rngMRam" oninput="rngMRamShow.value=rngMRam.value+'g'">
<input type="text" disabled="disabled" id="rngMRamShow" value="1g" name="master_ram_size">
</span>
</p>
<p>
<span class="field-name"><?php echo $this->translate('Master Node CPUs count');?>:</span>
<span class="field-name"><translate id="287">Master Node CPUs count</translate>:</span>
<span class="range">
<input type="range" name="master_cpus" class="vHorizon" min="1" max="16" value="1" style="margin:6px 0;" id="rngMCpus" oninput="rngMCpusShow.value=rngMCpus.value">
<input type="text" disabled="disabled" id="rngMCpusShow" value="1" name="master_cpus_count">
</span>
</p>
<p>
<span class="field-name"><?php echo $this->translate('Master Node Image size');?>:</span>
<span class="field-name"><translate id="288">Master Node Image size</translate>:</span>
<span class="range">
<input type="range" name="master_img" class="vHorizon" min="10" max="40" value="10" style="margin:6px 0;" id="rngMImg" oninput="rngMImgShow.value=rngMImg.value+'gb'">
<input type="text" disabled="disabled" id="rngMImgShow" value="10gb" name="master_img_size">
@@ -44,28 +44,28 @@ err_messages.add({
</p>
<p>
<span class="field-name"><?php echo $this->translate('Worker Nodes count');?>:</span>
<span class="field-name"><translate id="289">Worker Nodes count</translate>:</span>
<span class="range">
<input type="range" name="worker_nodes" class="vHorizon" min="0" max="8" value="0" style="margin:6px 0;" id="rngWNodes" oninput="rngWNodesShow.value=rngWNodes.value">
<input type="text" disabled="disabled" id="rngWNodesShow" value="0" name="worker_nodes_count">
</span>
</p>
<p>
<span class="field-name"><?php echo $this->translate('Worker Nodes RAM size');?>:</span>
<span class="field-name"><translate id="290">Worker Nodes RAM size</translate>:</span>
<span class="range">
<input type="range" name="worker_ram" class="vHorizon" min="1" max="8" value="1" style="margin:6px 0;" id="rngWRam" oninput="rngWRamShow.value=rngWRam.value+'g'">
<input type="text" disabled="disabled" id="rngWRamShow" value="1g" name="worker_ram_size">
</span>
</p>
<p>
<span class="field-name"><?php echo $this->translate('Worker Nodes CPUs count');?>:</span>
<span class="field-name"><translate id="291">Worker Nodes CPUs count</translate>:</span>
<span class="range">
<input type="range" name="worker_cpus" class="vHorizon" min="1" max="16" value="1" style="margin:6px 0;" id="rngWCpus" oninput="rngWCpusShow.value=rngWCpus.value">
<input type="text" disabled="disabled" id="rngWCpusShow" value="1" name="worker_cpus_count">
</span>
</p>
<p>
<span class="field-name"><?php echo $this->translate('Worker Nodes Image size');?>:</span>
<span class="field-name"><translate id="292">Worker Nodes Image size</translate>:</span>
<span class="range">
<input type="range" name="worker_img" class="vHorizon" min="10" max="40" value="10" style="margin:6px 0;" id="rngWImg" oninput="rngWImgShow.value=rngWImg.value+'gb'">
<input type="text" disabled="disabled" id="rngWImgShow" value="10gb" name="worker_img_size">
@@ -73,15 +73,15 @@ err_messages.add({
</p>
<p>
<span class="field-name"><?php echo $this->translate('Parameters');?>:</span>
<input type="checkbox" name="pv_enable" id="pvenable-id"><label for="pvenable-id"> <?php echo $this->translate('PV on or off');?></label>
<span class="field-name"><translate id="65">Parameters</translate>:</span>
<input type="checkbox" name="pv_enable" id="pvenable-id"><label for="pvenable-id"> <translate id="293">PV on or off</translate></label>
<br>
<input type="checkbox" name="kubelet_master" id="kubmaster-id"><label for="kubmaster-id"> <?php echo $this->translate('Master and Worker is a same thing');?></label>
<input type="checkbox" name="kubelet_master" id="kubmaster-id"><label for="kubmaster-id"> <translate id="294">Master and Worker is a same thing</translate></label>
</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('Cancel');?>" class="button red cancel-but" />
<input type="button" value="<translate id="72">Create</translate>" class="new button ok-but" />
<input type="button" value="<translate id="73">Cancel</translate>" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -2,18 +2,18 @@
err_messages.add({});
</script>
<dialog id="media-upload" class="window-box">
<h1><?php echo $this->translate('Add Storage Media');?></h1>
<h2><?php echo $this->translate('Upload ISO');?></h2>
<h1><translate id="306">Add Storage Media</translate></h1>
<h2><translate id="307">Upload ISO</translate></h2>
<form class="win" method="post" id="mediaSettings" onsubmit="return false;">
<div class="window-content">
<p>
<!-- D&D Markup -->
<div id="drag-and-drop-zone" class="uploader">
<div>Drag &amp; Drop Files Here</div>
<div class="or">-or-</div>
<div><translate id="207">Drag &amp; Drop Files Here</translate></div>
<div class="or"><translate id="208">-or-</translate></div>
<div class="browser">
<label>
<span>Click to open the file Browser</span>
<span><translate id="209">Click to open the file Browser</translate></span>
<input type="file" name="files[]" multiple="multiple" title='Click to add Files'>
</label>
</div>
@@ -24,7 +24,7 @@ err_messages.add({});
</div>
</form>
<div class="buttons">
<input type="button" value="<?php echo $this->translate('Close');?>" class="button red cancel-but" />
<input type="button" value="<translate id="111">Close</translate>" class="button red cancel-but" />
</div>
</dialog>
<script type="text/javascript">clonos.fileUploadPrepare();</script>

View File

@@ -1,26 +1,26 @@
<script type="text/javascript">
err_messages.add({
'netname':'<?php echo $this->translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>',
'network':'<?php echo $this->translate("Write something");?>',
'netname':'<translate>Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%</translate>',
'network':'<translate>Write something</translate>',
});
</script>
<dialog id="media" class="window-box">
<h1><?php echo $this->translate('Add Storage Media');?></h1>
<h2><?php echo $this->translate('Settings');?></h2>
<h1><translate>Add Storage Media</translate></h1>
<h2><translate>Settings</translate></h2>
<form class="win" method="post" id="mediaSettings" onsubmit="return false;">
<div class="window-content">
<p>
<span class="field-name"><?php echo $this->translate('Media name');?>:</span>
<span class="field-name"><translate>Media name</translate>:</span>
<input type="text" name="medianame" value="" pattern="[\x20-\x21\x23-\x26\x28-\x7F]+" required="required" />
</p>
<p>
<span class="field-name"><?php echo $this->translate('Path');?>:</span>
<span class="field-name"><translate>Path</translate>:</span>
<input type="text" name="mediapath" value="" pattern=".+" required="required" />
</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" />
<input type="button" value="<translate>Create</translate>" class="button ok-but" />
<input type="button" value="<translate>Cancel</translate>" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,10 +1,10 @@
<dialog id="settings-getupdate" class="window-box tasklog">
<h1><?php echo $this->translate('Settings update');?></h1>
<h1><translate id="355">Settings update</translate></h1>
<div class="window-content">
Check for updates&hellip;
<translate id="356">Check for updates&hellip;</translate>
</div>
<div class="buttons">
<input type="button" value="<?php echo $this->translate('Get updates');?>" class="new button ok-but hidden">
<input type="button" value="<?php echo $this->translate('Close');?>" class="button red cancel-but" />
<input type="button" value="<translate id="357">Get updates</translate>" class="new button ok-but hidden">
<input type="button" value="<translate id="111">Close</translate>" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,39 +1,39 @@
<script type="text/javascript">
err_messages.add({
'version':'<?php echo $this->translate("Can not be empty. Name must be with a numbers and dot symbol");?>',
'version':'<translate id="323">Can not be empty. Name must be with a numbers and dot symbol</translate>',
});
src_table_pattern='<?php $res=$this->getTableChunk('srcslist','tbody'); echo str_replace(array("\n","\r","\t"),'',$res[1]);?>';
</script>
<dialog id="srcget" class="window-box">
<h1><?php echo $this->translate('Get Sources FreeBSD');?></h1>
<h2><?php echo $this->translate('Get Version');?></h2>
<h1><translate id="336">Get Sources FreeBSD</translate></h1>
<h2><translate id="337">Get Version</translate></h2>
<form class="win" method="post" id="srcSettings" onsubmit="return false;">
<div class="window-content">
<p>
<span class="field-name"><?php echo $this->translate('Version number');?>:</span>
<span class="field-name"><translate id="117">Version number</translate>:</span>
<input type="text" name="version" value="" pattern="[0-9.]{1,5}" required="required" maxlength="5" />
</p>
<!--
<p>
<span class="field-name"><?php echo $this->translate('Version');?>:</span>
<span class="field-name"><translate id="116">Version</translate>:</span>
<input type="radio" name="version" value="release" id="ver1" checked="checked" class="inline"><label for="ver1">Release</label></radio>
<input type="radio" name="version" value="stable" id="ver2" class="inline"><label for="ver2">Stable</label></radio>
</p>
-->
<p>
<span class="field-name"><?php echo $this->translate('Repository');?>:</span>
<span class="field-name"><translate id="26">Repository</translate>:</span>
<select name="repository" disabled="disabled">
<option value="official"><?php echo $this->translate('Official FreeBSD repository (svn)');?></option>
<option value="clonos"><?php echo $this->translate('Clonos repository');?></option>
<option value="own"><?php echo $this->translate('Your own repository');?></option>
<option value="neighbor"><?php echo $this->translate('Neighbor node');?></option>
<option value="official"><translate id="329">Official FreeBSD repository (svn)</translate></option>
<option value="clonos"><translate id="327">Clonos repository</translate></option>
<option value="own"><translate id="330">Your own repository</translate></option>
<option value="neighbor"><translate id="331">Neighbor node</translate></option>
</select>
</p>
</div>
</form>
<div class="buttons">
<input type="button" value="<?php echo $this->translate('Get');?>" class="button ok-but" />
<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" />
<input type="button" value="<translate id="112">Get</translate>" class="button ok-but" />
<input type="button" value="<translate id="73">Cancel</translate>" class="button red cancel-but" />
</div>
</dialog>
<?php

View File

@@ -1,20 +1,20 @@
<dialog id="login" class="window-box">
<div class="login-wait hide"><div class="loadersmall"></div></div>
<div class="login-error-nouser hide"><?php echo $this->translate('<span class="icon-attention" style="font-size:large;"></span> Error! User not found!'); ?></div>
<div class="login-header"><span class="icon-expeditedssl"></span><?php echo $this->translate('Login');?></div>
<div class="login-error-nouser hide"><span class="icon-attention" style="font-size:large;"></span> <translate id="380">Error! User not found!</translate></div>
<div class="login-header"><span class="icon-expeditedssl"></span><translate id="381">Login</translate></div>
<form class="win" method="post" id="loginData" onsubmit="return false;">
<div class="window-content">
<p>
<span class="field-name"><?php echo $this->translate('Login');?>:</span>
<span class="field-name"><translate id="381">Login</translate>:</span>
<input type="text" name="login" value="" autofocus />
</p>
<p>
<span class="field-name"><?php echo $this->translate('Password');?>:</span>
<span class="field-name"><translate id="382">Password</translate>:</span>
<input type="password" name="password" value="" />
</p>
</div>
</form>
<div class="buttons">
<input type="button" value="<?php echo $this->translate('Go to the system');?>" class="button ok-but" />
<input type="button" value="<translate id="383">Go to the system</translate>" class="button ok-but" />
</div>
</dialog>

View File

@@ -1,9 +1,9 @@
<dialog id="tasklog" class="window-box tasklog">
<h1><?php echo $this->translate('Task log');?></h1>
<h1><translate id="347">Task log</translate></h1>
<div class="window-content">
Task log here&hellip;
<translate id="348">Task log here&hellip;</translate>
</div>
<div class="buttons">
<input type="button" value="<?php echo $this->translate('Close');?>" class="button red cancel-but" />
<input type="button" value="<translate id="111">Close</translate>" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -0,0 +1,28 @@
<dialog id="translates" class="window-box new">
<h1>
<translate id="376">Translate</translate>
</h1>
<h2><translate id="377">Translate phrase</translate></h2>
<form class="win" method="post" id="translate" onsubmit="return false;">
<div class="window-content">
<p>
Вы можете поучаствовать в переводе интерфейса на свой язык.
</p>
<p>
<span class="field-name"><translate id="378">Original phrase</translate>:</span>
<textarea id="origPhrase" disabled="disabled" name="origText"></textarea>
</p>
<p class="new">
<span class="field-name"><translate id="379">Translated phrase</translate>:</span>
<textarea id="translPhrase" name="translText"></textarea>
</p>
</div>
<input type="hidden" name="phraseID" id="trlt-phID" />
<input type="hidden" name="type" id="trlt-type" />
<input type="hidden" name="dialog" id="trlt-dlgname" />
</form>
<div class="buttons">
<input type="button" value="Save" class="new button ok-but" />
<input type="button" value="Cancel" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,57 +1,57 @@
<script type="text/javascript">
err_messages.add({
'username':'<?php echo $this->translate("CHANGE THIS TEXT!!! Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>',
'first_name':'<?php echo $this->translate("TYPE THIS TEXT!!!");?>',
'last_name':'<?php echo $this->translate("TYPE THIS TEXT!!!");?>',
'username':'<translate id="265">CHANGE THIS TEXT!!! Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%</translate>',
'first_name':'<translate id="266">TYPE THIS TEXT!!!</translate>',
'last_name':'<translate id="266">TYPE THIS TEXT!!!</translate>',
});
</script>
<dialog id="users-new" class="window-box new">
<h1>
<span class="new"><?php echo $this->translate('Add new user');?></span>
<span class="edit"><?php echo $this->translate('Edit user info');?></span>
<span class="new"><translate id="366">Add new user</translate></span>
<span class="edit"><translate id="367">Edit user info</translate></span>
</h1>
<h2><?php echo $this->translate('User Settings');?></h2>
<h2><translate id="368">User Settings</translate></h2>
<form class="win" method="post" id="userSettings" onsubmit="return false;">
<div class="window-content">
<p>
<span class="field-name"><?php echo $this->translate('User name');?>:</span>
<span class="field-name"><translate id="369">User name</translate>:</span>
<input type="text" name="username" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{2,}" required="required" class="edit-enable" />
</p>
<p class="new">
<span class="field-name"><?php echo $this->translate('User password');?>:</span>
<span class="field-name"><translate id="370">User password</translate>:</span>
<input type="password" name="password" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20" class="edit-disable"></input>
</p>
<p class="new">
<span class="field-name"><?php echo $this->translate('User password (again)');?>:</span>
<span class="field-name"><translate id="371">User password (again)</translate>:</span>
<input type="password" name="password1" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20" class="edit-disable"></input>
</p>
<fieldset class="edit full">
<legend><input type="checkbox" id="letsedit-1" class="letsedit" /><label for="letsedit-1"> <?php echo $this->translate('Change the password');?>:</label></legend>
<legend><input type="checkbox" id="letsedit-1" class="letsedit" /><label for="letsedit-1"> <translate id="372">Change the password</translate>:</label></legend>
<p>
<span class="field-name"><?php echo $this->translate('User password');?>:</span>
<span class="field-name"><translate id="370">User password</translate>:</span>
<input type="password" name="password" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20" disabled></input>
</p>
<p>
<span class="field-name"><?php echo $this->translate('User password (again)');?>:</span>
<span class="field-name"><translate id="371">User password (again)</translate>:</span>
<input type="password" name="password1" value="" placeholder="3-20 symbols" pattern=".{3,20}" maxlength="20" disabled></input>
</p>
</fieldset>
<p>
<span class="field-name"><?php echo $this->translate('First name');?>:</span>
<span class="field-name"><translate id="373">First name</translate>:</span>
<input type="text" name="first_name" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{2,}" required="required" class="edit-enable" />
</p>
<p>
<span class="field-name"><?php echo $this->translate('Last name');?>:</span>
<span class="field-name"><translate id="374">Last name</translate>:</span>
<input type="text" name="last_name" value="" pattern="[^0-9]{1}[a-zA-Z0-9]{2,}" required="required" class="edit-enable" />
</p>
<p>
<input type="checkbox" name="actuser" id="actuser" /><label for="actuser"> <?php echo $this->translate('Activate user');?></label>
<input type="checkbox" name="actuser" id="actuser" /><label for="actuser"> <translate id="375">Activate user</translate></label>
</p>
</div>
</form>
<div class="buttons">
<input type="button" value="<?php echo $this->translate('Add');?>" 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" />
<input type="button" value="<translate id="114">Add</translate>" class="new button ok-but" />
<input type="button" value="<translate id="74">Save</translate>" class="edit button ok-but" />
<input type="button" value="<translate id="73">Cancel</translate>" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -1,36 +1,36 @@
<script type="text/javascript">
err_messages.add({
'name':'<?php echo $this->translate("CHANGE THIS TEXT!!! Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>',
'first_name':'<?php echo $this->translate("TYPE THIS TEXT!!!");?>',
'last_name':'<?php echo $this->translate("TYPE THIS TEXT!!!");?>',
'name':'<translate id="265">CHANGE THIS TEXT!!! Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%</translate>',
'first_name':'<translate id="266">TYPE THIS TEXT!!!</translate>',
'last_name':'<translate id="266">TYPE THIS TEXT!!!</translate>',
});
</script>
<dialog id="vm_packages-new" class="window-box new">
<h1>
<span class="new"><?php echo $this->translate('Add new template');?></span>
<span class="edit"><?php echo $this->translate('Edit template');?></span>
<span class="new"><translate id="267">Add new template</translate></span>
<span class="edit"><translate id="268">Edit template</translate></span>
</h1>
<h2><?php echo $this->translate('Template Settings');?></h2>
<h2><translate id="269">Template Settings</translate></h2>
<form class="win" method="post" id="templateSettings" onsubmit="return false;">
<div class="window-content">
<p>
<span class="field-name"><?php echo $this->translate('Name');?>:</span>
<span class="field-name"><translate id="270">Name</translate>:</span>
<input type="text" name="name" value="" pattern=".{2,}" required="required" class="edit-enable" />
</p>
<p>
<span class="field-name"><?php echo $this->translate('Description');?>:</span>
<span class="field-name"><translate id="39">Description</translate>:</span>
<textarea name="description" rows="3"></textarea>
</p>
<p>
<span class="field-name"><?php echo $this->translate('RAM Size');?>:</span>
<span class="field-name"><translate id="271">RAM Size</translate>:</span>
<input type="text" name="pkg_vm_ram" value="" pattern="^[0-9]+\s*(g|G|gb|GB|mb|MB|m|M)$" placeholder="1g" required="required" />
</p>
<p>
<span class="field-name"><?php echo $this->translate('HDD Size');?>:</span>
<span class="field-name"><translate id="272">HDD Size</translate>:</span>
<input type="text" name="pkg_vm_disk" value="" pattern="^[0-9]+\s*(g|G|gb|GB|mb|MB|m|M)$" placeholder="10g" required="required" />
</p>
<p>
<span class="field-name"><?php echo $this->translate('CPUs Count');?>:</span>
<span class="field-name"><translate id="273">CPUs Count</translate>:</span>
<span class="range">
<input type="range" name="pkg_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" />
@@ -39,8 +39,8 @@ err_messages.add({
</div>
</form>
<div class="buttons">
<input type="button" value="<?php echo $this->translate('Add');?>" 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" />
<input type="button" value="<translate id="114">Add</translate>" class="new button ok-but" />
<input type="button" value="<translate id="74">Save</translate>" class="edit button ok-but" />
<input type="button" value="<translate id="73">Cancel</translate>" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -10,8 +10,8 @@
<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>
<span class="icon-spin5 animate-spin"></span><translate id="129">Please, wait for initialize Virtual Machine</translate>
<br /><small style="display: block;font-size: small;margin-top: 20px;"><translate id="130">You can click here, or wait</translate>: <span id="vnc-countdown"><translate id="131">some time</translate></span></small>
</div>
</div>
</div>

View File

@@ -1,26 +1,26 @@
<script type="text/javascript">
err_messages.add({
'netname':'<?php echo $this->translate("Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%");?>',
'network':'<?php echo $this->translate("Write correct ip address, e.g: 10.0.0.2");?>',
'netname':'<translate id="83">Can not be empty. Name must begin with a letter / a-z / and not have any special symbols: -,.=%</translate>',
'network':'<translate id="85">Write correct ip address, e.g: 10.0.0.2</translate>',
});
</script>
<dialog id="vpnet" class="window-box">
<h1><?php echo $this->translate('Create Network');?></h1>
<h2><?php echo $this->translate('Settings');?></h2>
<h1><translate id="299">Create Network</translate></h1>
<h2><translate id="1">Settings</translate></h2>
<form class="win" method="post" id="vpnetSettings" onsubmit="return false;">
<div class="window-content">
<p>
<span class="field-name"><?php echo $this->translate('Network name');?>:</span>
<span class="field-name"><translate id="300">Network name</translate>:</span>
<input type="text" name="netname" value="" pattern="[\x20-\x21\x23-\x26\x28-\x7F]+" required="required" />
</p>
<p>
<span class="field-name"><?php echo $this->translate('Network');?>:</span>
<span class="field-name"><translate id="301">Network</translate>:</span>
<input type="text" name="network" value="" pattern="^(?:[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('Create');?>" class="button ok-but" />
<input type="button" value="<?php echo $this->translate('Cancel');?>" class="button red cancel-but" />
<input type="button" value="<translate id="72">Create</translate>" class="button ok-but" />
<input type="button" value="<translate id="73">Cancel</translate>" class="button red cancel-but" />
</div>
</dialog>

View File

@@ -12,6 +12,7 @@ require_once($_real_path.'/php/menu.php');
$chunks=Utils::gen_uri_chunks($uri);
$clonos=new ClonOS($_real_path, $chunks);
$locale = new Localization($_real_path.'/public/'); # /usr/home/web/cp/clonos/public/
$translate=new Translate($locale,$_real_path);
$menu=new Menu($locale, $chunks, $_real_path.'/public/pages/');
if(isset($_GET['upload'])){
@@ -32,7 +33,8 @@ $root=trim($_SERVER['DOCUMENT_ROOT'], $_ds);
if(!empty($chunks)) $uri=$chunks[0];
$file_path=$_ds.$root.$_ds.'pages'.$_ds.$uri.$_ds;
$file_name=$file_path.$lang.'.index.php';
//$file_name=$file_path.$lang.'.index.php';
$file_name='index.php';
$json_name=$file_path.'a.json.php';
if(empty($uri)){
@@ -127,8 +129,11 @@ foreach(Config::$languages as $lng=>$lngname){
<div class="main"><div id="content">
<div id="ctop">
<?php
if(file_exists($file_name)){
include($file_name);
$translate->translate('pages',$chunks[0],'index.php');
$incfile=$translate->get_translated_filename();
if(file_exists($incfile)){ //$file_name
include($incfile); //$file_name
} else {
echo '<h1>'.$locale->translate('Not implemented yet').'!</h1>';
}
@@ -158,6 +163,7 @@ $clonos->placeDialogs();
</div>
</div>
</div>
<?php echo $clonos->placeDialogByName('translate'); ?>
</div></div>
</main>
@@ -174,6 +180,8 @@ echo $menu->html;
<header>
<div class="top-right">
<span class="txt">
<input type="checkbox" name="trlt" id="trlt-chk" onchange="clonos.trltOn();" /><label for="trlt-chk"> Translate ON</label>
<span class="space"></span>
<a href="https://www.patreon.com/clonos" target="_blank"><?php echo $locale->translate('DONATE'); ?></a>
<span class="space"></span>
<?php echo $locale->translate('VERSION'),': ',file_get_contents($clonos->realpath.'version'); ?>
@@ -212,7 +220,8 @@ foreach(Config::$languages as $lng=>$lngname){
</div>
</header>
<div class="login-area<?php if(!$user_info['error']) echo ' hide'; ?>"><?php echo $clonos->placeDialogByName('system-login'); ?>
<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&hellip;</div>
<div class="ccopy">Cloud computing, Lightweight containerization, Virtualization, etc&hellip;</div>
</div>

View File

@@ -57,7 +57,9 @@ var clonos={
$('ul.menu a[href="/'+p[1]+'/"]').addClass('sel');
if(isset(page_titles))
{
$('div.header #title').html(page_titles[p[1]]);
var title=page_titles[p[1]];
$('div.header #title').html(title);
$('title').html('ClonOS — ' + title);
}
},
route:function(args)
@@ -78,10 +80,18 @@ var clonos={
}
this.loadData('getJsonPage',$.proxy(this.onLoadData,this));
},
onBackHistory:function(event)
{
if(!$('body').hasClass('translate'))
{
$('input#trlt-chk').prop('checked',false);
}
},
addEvents:function()
{
$(window).on('hashchange',$.proxy(this.onHashChange,this));
$(window).on('pageshow',$.proxy(this.onBackHistory,this));
$('#lng-sel').on('change',$.proxy(this.setLang,this)); //function(){document.cookie="lang="+$(this).val()+";path=/;";location.reload();});
$('#content').on('click',$.proxy(this.bodyClick,this));
$('#login').on('click',$.proxy(this.loginAction,this));
@@ -196,6 +206,63 @@ var clonos={
}
return phrase;
},
trltGo:function(id,el)
{
var lang=this.getLang();
var dlgname='';
if(lang=='en')
{
alert('There is no need to translate into English, since all the phrases of the project are written in it.\nPlease select the interface language you want to translate English phrases into.');
return;
}
if($('body').hasClass('translate'))
{
var type='system';
var dialog=$(el).parents('dialog');
if(dialog.length>0)
{
type='dialog';
dlgname=$(dialog).attr('id');
}else{
var pages=$(el).parents('div#ctop');
if(pages.length>0) type='pages';
}
var posts=$('form#transtlates').serializeArray();
posts.push({'name':'type','value':type});
posts.push({'name':'dialog','value':dlgname});
posts.push({'name':'phraseID','value':id});
this.loadData('trltGo',$.proxy(this.onTrltGo,this),posts);
this.dialogShow1('translates','new');
return;
}
},
trltOn:function()
{
if($('input#trlt-chk').is(':checked'))
$('body').addClass('translate');
else
$('body').removeClass('translate');
},
onTrltGo:function(data)
{
$('form#translate textarea#origPhrase').val(data.eng);
$('form#translate textarea#translPhrase').val(data.oth);
$('form#translate input#trlt-phID').val(data.phraseID);
$('form#translate input#trlt-type').val(data.type);
$('form#translate input#trlt-dlgname').val(data.dialog);
},
onTrltUpdate:function(data)
{
//debugger;
if(typeof data.error!='undefined' && !data.error)
{
$('body span#trlt-'+data.phraseID).html(data.phrase).css({backgroundColor: '#ffdddd'});
setTimeout(function(id){$('span#trlt-'+id).css({backgroundColor:''})},200,data.phraseID);
this.dialogClose('translates');
}
},
getTrIdsForCheck:function(table_id)
{
@@ -213,6 +280,10 @@ var clonos={
dialogOpen:function(event)
{
var tg=event.target;
if(tg.id.substr(0,5)=='trlt-')
{
tg=$(event.target).parent();
}
var cl=$(tg).attr('class');
var res=new RegExp(/id:([^ ]+)/);
if(res=cl.match(res))
@@ -352,22 +423,25 @@ var clonos={
if(!$(dialog).hasClass('fullscreen'))
this.dialogSetPosition(dialog);
},
dialogClose:function()
dialogClose:function(dname)
{
var dialogs=$('dialog');
for(var n=0,nl=dialogs.length;n<nl;n++)
{
var dialog=dialogs[n];
if(typeof $(dialog).get(0).showModal=='function')
if(typeof dname=='undefined' || typeof dname!='undefined' && dname==$(dialog).attr('id'))
{
if($(dialog).attr('open')!='undefined' &&
$(dialog).attr('open')=='open')
$(dialog).get(0).close();
}else{
$('div#backdrop').css('display','none');
if(typeof $(dialog).get(0).showModal=='function')
{
if($(dialog).attr('open')!='undefined' &&
$(dialog).attr('open')=='open')
$(dialog).get(0).close();
}else{
$('div#backdrop').css('display','none');
}
$(dialog).css('display','none');
if($('form',dialog).length>0) $('form',dialog).get(0).reset(); // Очищаем форму, после нажатия на CANCEL
}
$(dialog).css('display','none');
if($('form',dialog).length>0) $('form',dialog).get(0).reset(); // Очищаем форму, после нажатия на CANCEL
}
},
dialogCloseByKey:function(event)
@@ -630,6 +704,14 @@ var clonos={
this.loadData(fmode,$.proxy(this.onK8sCreate,this),posts);
}
if(id=='translates')
{
var fmode='trltUpdate';
//var pr=$()
var posts=$('form#translate').serializeArray();
this.loadData(fmode,$.proxy(this.onTrltUpdate,this),posts);
}
}
},
fillFormDataOnChange:function(data)
@@ -1811,6 +1893,20 @@ var clonos={
//debugger;
if(!this.authorized) {location.reload();return;}
var target=event.target;
var elid=$(target).attr('id');
if(typeof elid=='undefined') elid=$(target)[0].id;
if(elid.substr(0,5)=='trlt-')
{
var trltId=elid.substr(5);
this.trltGo(trltId,target);
if($('body').hasClass('translate')) return false;
var target=$(target).parent();
elid=$(target)[0].id;
if(typeof elid=='undefined') elid=$(target).attr(id);
}
if($(target).parents('form').length>0)
{
var cl=$(target).attr('class');
@@ -1857,7 +1953,7 @@ var clonos={
return;
}
var elid=$(target).attr('id');
/* ловим клики по выпадающему меню */
if(typeof elid!='undefined')
@@ -1872,6 +1968,7 @@ var clonos={
this.DDMenuSelect(elid);
return;break;
}
}
var outer=$(target).parents('.vnc-wait');
@@ -1926,7 +2023,8 @@ var clonos={
var opt='jail';
if(tblid=='bhyveslist') opt='bhyve';
var cl=target.className;
var cl=$(target).attr('class');
if(typeof cl=='undefined') cl=$(target)[0].className;
switch(cl)
{
case 'icon-cancel':
@@ -3438,6 +3536,11 @@ var clonos={
document.cookie="lang="+lang+";path=/;";
location.reload();
},
getLang:function()
{
var lang=$('#lng-sel option[selected="selected"]').val();
return lang;
},
graphs:{},
createGraphs:function()

View File

@@ -0,0 +1,19 @@
<?php
$clonos->useDialogs(array(
'authkey',
));
?>
<h1><translate>List of authorization keys</translate></h1>
<p>
<span class="top-button icon-plus id:authkey<translate>Add new authkey</span>
</p>
<table class="tsimple" id="authkeyslist" width="100%">
<thead>
<td class="wdt-200 keyname"><translate>Name of key</translate></td>
<td class="txtleft"><translate>Authkey body</translate></td>
<td class="wdt-80"><translate>Action</translate></td>
</thead>
<tbody></tbody>
</table>

View File

@@ -0,0 +1,19 @@
<?php
$clonos->useDialogs(array(
'authkey',
));
?>
<h1><translate id="226">List of authorization keys</translate></h1>
<p>
<span class="top-button icon-plus id:authkey"><translate id="227">Add new authkey</translate></span>
</p>
<table class="tsimple" id="authkeyslist" width="100%">
<thead>
<td class="wdt-200 keyname"><translate id="228">Name of key</translate></td>
<td class="txtleft"><translate id="229">Authkey body</translate></td>
<td class="wdt-80"><translate>Action</translate></td>
</thead>
<tbody></tbody>
</table>

View File

@@ -0,0 +1,19 @@
<?php
$clonos->useDialogs(array(
'authkey',
));
?>
<h1><translate id="226">List of authorization keys</translate></h1>
<p>
<span class="top-button icon-plus id:authkey"><translate id="227">Add new authkey</translate></span>
</p>
<table class="tsimple" id="authkeyslist" width="100%">
<thead>
<td class="wdt-200 keyname"><translate id="228">Name of key</translate></td>
<td class="txtleft"><translate id="229">Authkey body</translate></td>
<td class="wdt-80"><translate id="223">Action</translate></td>
</thead>
<tbody></tbody>
</table>

View File

@@ -0,0 +1,28 @@
<?php
$clonos->useDialogs(array(
'bases',
'bases-repo',
));
?>
<h1><translate>FreeBSD bases:</translate></h1>
<p><span class="top-button icon-edit id:basescompile"><translate>Build from source code</translate></span>
<span class="top-button icon-gift id:getrepo"><translate>Fetch from repository</translate></span></p>
<table class="tsimple" id="baseslist" width="100%">
<thead>
<tr>
<th><translate>Node name</translate></th>
<th><translate>Name</translate></th>
<th class="wdt-80"><translate>Platform</translate></th>
<th class="wdt-80"><translate>Arch</translate></th>
<th class="wdt-80"><translate>TargetArch</translate></th>
<th colspan="2" class="wdt-120"><translate>Ver</translate></th>
<th class="wdt-80"><translate>Elf</translate></th>
<th class="wdt-90"><translate>Action</translate></th>
<th colspan="2" class="wdt-50"><translate>Action</translate></th>
<th class="wdt-90">&nbsp;</th>
</tr>
</thead>
<tbody></tbody>
</table>

View File

@@ -0,0 +1,28 @@
<?php
$clonos->useDialogs(array(
'bases',
'bases-repo',
));
?>
<h1><translate id="315">FreeBSD bases:</translate></h1>
<p><span class="top-button icon-edit id:basescompile"><translate id="316">Build from source code</translate></span>
<span class="top-button icon-gift id:getrepo"><translate id="317">Fetch from repository</translate></span></p>
<table class="tsimple" id="baseslist" width="100%">
<thead>
<tr>
<th><translate id="219">Node name</translate></th>
<th><translate id="232">Name</translate></th>
<th class="wdt-80"><translate id="318">Platform</translate></th>
<th class="wdt-80"><translate id="319">Arch</translate></th>
<th class="wdt-80"><translate id="320">TargetArch</translate></th>
<th colspan="2" class="wdt-120"><translate id="321">Ver</translate></th>
<th class="wdt-80"><translate id="322">Elf</translate></th>
<th class="wdt-90"><translate id="223">Action</translate></th>
<th colspan="2" class="wdt-50"><translate id="223">Action</translate></th>
<th class="wdt-90">&nbsp;</th>
</tr>
</thead>
<tbody></tbody>
</table>

View File

@@ -0,0 +1,32 @@
<?php
$clonos->useDialogs(array(
'vnc-bhyve',
'bhyve-new',
'bhyve-obtain',
'bhyve-clone',
'bhyve-rename',
'jail-settings-config-menu',
));
?>
<h1><translate>Bhyve VMs</translate></h1>
<p>
<span class="top-button icon-plus id:bhyve-new"><translate>Create from ISO</translate></span>
<span class="top-button icon-plus id:bhyve-obtain"><translate>Cloud images</translate></span>
</p>
<table class="tsimple" id="bhyveslist" width="100%">
<thead>
<th class="wdt-120"><translate>Node name</translate></th>
<th class="txtleft"><translate>VM</translate></th>
<th class="wdt-120"><translate>Usage</translate></th>
<th class="txtcenter wdt-70"><translate>RAM</translate></th>
<th class="wdt-30"><translate>CPU</translate></th>
<th class="txtcenter wdt-100"><translate>OS type</translate></th>
<th class="txtcenter wdt-120"><translate>Status</translate></th>
<th colspan="4" class="wdt-100"><translate>Action</translate></th>
<th class="wdt-30"><translate>VNC</translate></th>
<th class="txtcenter wdt-50"><translate>VNC port</translate></th>
</thead>
<tbody></tbody>
</table>

View File

@@ -0,0 +1,32 @@
<?php
$clonos->useDialogs(array(
'vnc-bhyve',
'bhyve-new',
'bhyve-obtain',
'bhyve-clone',
'bhyve-rename',
'jail-settings-config-menu',
));
?>
<h1><translate id="12">Bhyve VMs</translate></h1>
<p>
<span class="top-button icon-plus id:bhyve-new"><translate id="234">Create from ISO</translate></span>
<span class="top-button icon-plus id:bhyve-obtain"><translate id="235">Cloud images</translate></span>
</p>
<table class="tsimple" id="bhyveslist" width="100%">
<thead>
<th class="wdt-120"><translate id="219">Node name</translate></th>
<th class="txtleft"><translate id="236">VM</translate></th>
<th class="wdt-120"><translate id="221">Usage</translate></th>
<th class="txtcenter wdt-70"><translate id="237">RAM</translate></th>
<th class="wdt-30"><translate id="238">CPU</translate></th>
<th class="txtcenter wdt-100"><translate id="239">OS type</translate></th>
<th class="txtcenter wdt-120"><translate id="222">Status</translate></th>
<th colspan="4" class="wdt-100"><translate id="223">Action</translate></th>
<th class="wdt-30"><translate id="224">VNC</translate></th>
<th class="txtcenter wdt-50"><translate id="240">VNC port</translate></th>
</thead>
<tbody></tbody>
</table>

View File

@@ -0,0 +1,21 @@
<?php
$clonos->useDialogs(array(
'jail-import',
'image-import',
// 'jail-settings-config-menu',
));
?>
<h1><translate>Imported images:</translate></h1>
<span class="top-button icon-upload id:jail-import"><translate>Import</translate></span></p>
<table class="tsimple" id="impslist" width="100%">
<thead>
<td class="keyname"><translate>Image name</translate></td>
<td class="txtcenter wdt-120 impsize"><translate>Size</translate></td>
<td class="txtleft wdt-150"><translate>Type</translate></td>
<th class="txtcenter wdt-120"><translate>Status</translate></th>
<td class="wdt-80"><translate>Action</translate></td>
</thead>
<tbody></tbody>
</table>

View File

@@ -0,0 +1,21 @@
<?php
$clonos->useDialogs(array(
'jail-import',
'image-import',
// 'jail-settings-config-menu',
));
?>
<h1><translate id="308">Imported images:</translate></h1>
<span class="top-button icon-upload id:jail-import"><translate id="218">Import</translate></span></p>
<table class="tsimple" id="impslist" width="100%">
<thead>
<td class="keyname"><translate id="309">Image name</translate></td>
<td class="txtcenter wdt-120 impsize"><translate id="310">Size</translate></td>
<td class="txtleft wdt-150"><translate id="311">Type</translate></td>
<th class="txtcenter wdt-120"><translate id="222">Status</translate></th>
<td class="wdt-80"><translate id="223">Action</translate></td>
</thead>
<tbody></tbody>
</table>

View File

@@ -0,0 +1,23 @@
<?php
$clonos->useDialogs(array(
));
?>
<div id="tab1">
<h1><translate>Template for instances:</translate></h1>
<!-- p><span class="top-button icon-plus id:jail-settings">Создать контейнер</span></p-->
<table class="tsimple" id="instanceslist" width="100%">
<thead>
<tr>
<th class="txtleft wdt-150"><translate>Logo</translate></th>
<th class="txtleft wdt-100"><translate>Name</translate></th>
<th><translate>Desc</translate></th>
</tr>
</thead>
<tbody></tbody>
</table>
</div>
<div id="tab2"></div>

View File

@@ -0,0 +1,23 @@
<?php
$clonos->useDialogs(array(
));
?>
<div id="tab1">
<h1><translate id="230">Template for instances:</translate></h1>
<!-- p><span class="top-button icon-plus id:jail-settings">Создать контейнер</span></p-->
<table class="tsimple" id="instanceslist" width="100%">
<thead>
<tr>
<th class="txtleft wdt-150"><translate id="231">Logo</translate></th>
<th class="txtleft wdt-100"><translate id="232">Name</translate></th>
<th><translate id="233">Desc</translate></th>
</tr>
</thead>
<tbody></tbody>
</table>
</div>
<div id="tab2"></div>

View File

@@ -0,0 +1,36 @@
<?php
if(isset($clonos->uri_chunks[1])){
include('helpers.php');
return;
}
$clonos->useDialogs([
'vnc',
'jail-settings',
'jail-settings-config-menu',
'jail-import',
'jail-clone',
'jail-rename',
]);
?>
<h1><translate>Jail containers:</translate></h1>
<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</translate></span></p>
<table class="tsimple" id="jailslist" width="100%">
<thead>
<tr>
<th class="elastic"><translate>Node name</translate></th>
<th class="txtleft"><translate>Jail</translate></th>
<th class="wdt-120"><translate>Usage</translate></th>
<th class="txtleft"><translate>IP address</translate></th>
<th class="txtcenter wdt-120"><translate>Status</translate></th>
<th colspan="4" class="txtcenter wdt-100"><translate>Action</translate></th>
<th class="wdt-30"><translate>VNC</translate></th>
<th class="txtcenter wdt-50" title="VNC port"><translate>Port</translate></th>
</tr>
</thead>
<tbody></tbody>
</table>

View File

@@ -0,0 +1,36 @@
<?php
if(isset($clonos->uri_chunks[1])){
include('helpers.php');
return;
}
$clonos->useDialogs([
'vnc',
'jail-settings',
'jail-settings-config-menu',
'jail-import',
'jail-clone',
'jail-rename',
]);
?>
<h1><translate>Jail containers:</translate></h1>
<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</translate></span></p>
<table class="tsimple" id="jailslist" width="100%">
<thead>
<tr>
<th class="elastic"><translate>Node name</translate></th>
<th class="txtleft"><translate>Jail</translate></th>
<th class="wdt-120"><translate>Usage</translate></th>
<th class="txtleft"><translate>IP address</translate></th>
<th class="txtcenter wdt-120"><translate>Status</translate></th>
<th colspan="4" class="txtcenter wdt-100"><translate>Action</translate></th>
<th class="wdt-30"><translate>VNC</translate></th>
<th class="txtcenter wdt-50" title="VNC port"><translate>Port</translate></th>
</tr>
</thead>
<tbody></tbody>
</table>

View File

@@ -14,22 +14,22 @@ $clonos->useDialogs([
]);
?>
<h1><translate>Jail containers:</translate></h1>
<h1><translate id="217">Jail containers:</translate></h1>
<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</translate></span></p>
<p><span class="top-button icon-plus id:jail-settings"><translate id="55">Create jail</translate></span>
<span class="top-button icon-upload id:jail-import"><translate id="218">Import</translate></span></p>
<table class="tsimple" id="jailslist" width="100%">
<thead>
<tr>
<th class="elastic"><translate>Node name</translate></th>
<th class="txtleft"><translate>Jail</translate></th>
<th class="wdt-120"><translate>Usage</translate></th>
<th class="txtleft"><translate>IP address</translate></th>
<th class="txtcenter wdt-120"><translate>Status</translate></th>
<th colspan="4" class="txtcenter wdt-100"><translate>Action</translate></th>
<th class="wdt-30"><translate>VNC</translate></th>
<th class="txtcenter wdt-50" title="VNC port"><translate>Port</translate></th>
<th class="elastic"><translate id="219">Node name</translate></th>
<th class="txtleft"><translate id="220">Jail</translate></th>
<th class="wdt-120"><translate id="221">Usage</translate></th>
<th class="txtleft"><translate id="61">IP address</translate></th>
<th class="txtcenter wdt-120"><translate id="222">Status</translate></th>
<th colspan="4" class="txtcenter wdt-100"><translate id="223">Action</translate></th>
<th class="wdt-30"><translate id="224">VNC</translate></th>
<th class="txtcenter wdt-50" title="VNC port"><translate id="225">Port</translate></th>
</tr>
</thead>
<tbody></tbody>

View File

@@ -0,0 +1,19 @@
<?php
$clonos->useDialogs(['k8s-new']);
?>
<h1><translate>K8S Сlusters:</translate></h1>
<p><span class="top-button icon-plus id:k8s-new"><translate>Create Kubernetes</translate></span></p>
<table class="tsimple" id="k8slist" width="100%">
<thead>
<tr>
<th class="wdt-70"><translate>Cluster ID</translate></th>
<th class="elastic txtleft wdt-150"><translate>Cluster Name</translate></th>
<th class="txtcenter wdt-80"><translate>Masters Count</translate></th>
<th class="txtcenter wdt-80"><translate>Workers Count</translate></th>
<th class="txtleft"><translate>VM list</translate></th>
<th colspan="4" class="txtcenter wdt-100"><translate>Actions</translate></th>
</tr>
</thead>
<tbody></tbody>
</table>

View File

@@ -0,0 +1,19 @@
<?php
$clonos->useDialogs(['k8s-new']);
?>
<h1><translate id="274">K8S Сlusters:</translate></h1>
<p><span class="top-button icon-plus id:k8s-new"><translate id="275">Create Kubernetes</translate></span></p>
<table class="tsimple" id="k8slist" width="100%">
<thead>
<tr>
<th class="wdt-70"><translate id="276">Cluster ID</translate></th>
<th class="elastic txtleft wdt-150"><translate id="277">Cluster Name</translate></th>
<th class="txtcenter wdt-80"><translate id="278">Masters Count</translate></th>
<th class="txtcenter wdt-80"><translate id="279">Workers Count</translate></th>
<th class="txtleft"><translate id="280">VM list</translate></th>
<th colspan="4" class="txtcenter wdt-100"><translate id="281">Actions</translate></th>
</tr>
</thead>
<tbody></tbody>
</table>

Some files were not shown because too many files have changed in this diff Show More