mirror of
https://github.com/unraid/webgui.git
synced 2026-03-09 04:21:27 -05:00
@@ -20,7 +20,7 @@ font-family:'bitstream';font-weight:normal;font-style:normal;
|
||||
src:url('/webGui/styles/bitstream.eot');src:url('/webGui/styles/bitstream.eot?#iefix') format('embedded-opentype'),url('/webGui/styles/bitstream.woff') format('woff'),url('/webGui/styles/bitstream.ttf') format('truetype'),url('/webGui/styles/bitstream.svg#bitstream') format('svg')}
|
||||
html{font-family:clear-sans;font-size:62.5%;height:100%}
|
||||
body{font-size:1.3rem;padding:0;margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
|
||||
.logLine{font-family:bitstream;font-size:1.1rem;color:#505050;margin:0 8px;padding:0;text-align:left}
|
||||
.logLine{font-family:bitstream;font-size:1.1rem;margin:0 8px;padding:0;text-align:left}
|
||||
.logLine.spacing{margin:10px}
|
||||
input[type=button],input[type=reset],input[type=submit],button,button[type=button],a.button{font-family:clear-sans;font-size:1.1rem;text-transform:uppercase;margin:0;padding:9px 18px;text-decoration:none;white-space:nowrap;cursor:pointer;outline:none;border-radius:4px;border:0;color:#f15a2c;background:-webkit-gradient(linear,left top,right top,from(#e22828),to(#ff8c2f)) 0 0 no-repeat,-webkit-gradient(linear,left top,right top,from(#e22828),to(#ff8c2f)) 0 100% no-repeat,-webkit-gradient(linear,left bottom,left top,from(#e22828),to(#e22828)) 0 100% no-repeat,-webkit-gradient(linear,left bottom,left top,from(#ff8c2f),to(#ff8c2f)) 100% 100% no-repeat;background:linear-gradient(90deg,#e22828 0,#ff8c2f) 0 0 no-repeat,linear-gradient(90deg,#e22828 0,#ff8c2f) 0 100% no-repeat,linear-gradient(0deg,#e22828 0,#e22828) 0 100% no-repeat,linear-gradient(0deg,#ff8c2f 0,#ff8c2f) 100% 100% no-repeat;background-size:100% 2px,100% 2px,2px 100%,2px 100%}
|
||||
input:hover[type=button],input:hover[type=reset],input:hover[type=submit],button:hover,button:hover[type=button],a.button:hover{color:#f2f2f2;background:-webkit-gradient(linear,left top,right top,from(#e22828),to(#ff8c2f));background:linear-gradient(90deg,#e22828 0,#ff8c2f)}
|
||||
|
||||
@@ -104,13 +104,14 @@ div.four label{float:left;display:table-cell;width:25%}
|
||||
div.four label:nth-child(4n+4){float:none;clear:both}
|
||||
div.four label.cpu1{width:32%}
|
||||
div.four label.cpu2{width:26%}
|
||||
th.vmname{width:350px}
|
||||
th.eight{width:8%}
|
||||
tbody>tr.sortable:hover{cursor:move}
|
||||
table.domdisk tbody tr:nth-child(even){background-color:transparent}
|
||||
table tbody td{line-height:normal}
|
||||
</style>
|
||||
<table id="kvm_table" class="tablesorter four shift">
|
||||
<thead><tr><th><a href="#" style="cursor:hand;margin-left:12px;display:inline-block;width:32px" onclick="resetSorting()" title="Reset sorting"><i class="fa fa-th-list"></i></a>Name</th><th>Description</th><th>CPUs</th><th>Memory</th><th>vDisks</th><th>Graphics</th><th class="eight">Autostart</th></tr></thead>
|
||||
<thead><tr><th class="vmname"><a href="#" style="cursor:hand;margin-left:12px;display:inline-block;width:32px" onclick="resetSorting()" title="Reset sorting"><i class="fa fa-th-list"></i></a>Name</th><th>Description</th><th>CPUs</th><th>Memory</th><th>vDisks</th><th>Graphics</th><th class="eight">Autostart</th></tr></thead>
|
||||
<tbody id="kvm_list"><tr><td colspan='8'><div class="spinner"></div></td></tr></tbody>
|
||||
</table>
|
||||
<input type="button" onclick="addVM()" id="btnAddVM" value="Add VM" style="display:none">
|
||||
|
||||
@@ -149,7 +149,7 @@ if ($low) $memory_maximum = pow(2,ceil(log($memory_installed)/log(2)));
|
||||
.switch-button-background{top:12px}
|
||||
<?endif;?>
|
||||
span.outer{float:left}
|
||||
span.inner{width:124px}
|
||||
span.inner{width:134px}
|
||||
span.ups{width:124px;display:inline-block}
|
||||
</style>
|
||||
<script src="<?autov('/webGui/javascript/jquery.switchbutton.js')?>"></script>
|
||||
@@ -305,9 +305,9 @@ foreach ($ports as $port) {
|
||||
$i = 0;
|
||||
foreach ($shares as $name => $share) {
|
||||
$i++;
|
||||
$list = truncate($name,20);
|
||||
if ($share['luksStatus']>0) $list = "<span class='green-text'>$list</span>";
|
||||
elseif ($share['useCache']=='only') $list = "<span class='orange-text'>$list</span>";
|
||||
$list = "<a href=\"$path/Share?name=".urlencode($name)."\" class=\"blue-text\" title=\"$name settings\">".truncate($name,20)."</a>";
|
||||
if ($share['luksStatus']>0) $list = str_replace('blue-text','green-text',$list);
|
||||
elseif ($share['useCache']=='only') $list = str_replace('blue-text','orange-text',$list);
|
||||
$comment = truncate($share['comment'],40);
|
||||
$security = export_settings($var['shareSMBEnabled'], $sec[$name]);
|
||||
echo "<tr><td></td><td><i class='icon-folder'></i>$list</td><td>$comment</td><td>$security</td><td id='share{$i}'>0</td><td></td></tr>";
|
||||
@@ -318,9 +318,9 @@ if (!count($shares)) echo "<tr><td></td><td colspan='4' style='text-align:center
|
||||
<?if ($var['shareAFPEnabled']=='yes'):?>
|
||||
<tbody class='afp share share2' style='display:none'><?
|
||||
foreach ($shares as $name => $share) {
|
||||
$list = truncate($name,20);
|
||||
if ($share['luksStatus']>0) $list = "<span class='green-text'>$list</span>";
|
||||
elseif ($share['useCache']=='only') $list = "<span class='orange-text'>$list</span>";
|
||||
$list = "<a href=\"$path/Share?name=".urlencode($name)."\" class=\"blue-text\" title=\"$name settings\">".truncate($name,20)."</a>";
|
||||
if ($share['luksStatus']>0) $list = str_replace('blue-text','green-text',$list);
|
||||
elseif ($share['useCache']=='only') $list = str_replace('blue-text','orange-text',$list);
|
||||
$comment = truncate($share['comment'],40);
|
||||
$security = export_settings($var['shareAFPEnabled'], $sec_afp[$name]);
|
||||
echo "<tr><td></td><td><i class='icon-folder'></i>$list</td><td>$comment</td><td>$security</td><td>-</td><td></td></tr>";
|
||||
@@ -331,9 +331,9 @@ if (!count($shares)) echo "<tr><td></td><td colspan='4' style='text-align:center
|
||||
<?if ($var['shareNFSEnabled']=='yes'):?>
|
||||
<tbody class='nfs share share3' style='display:none'><?
|
||||
foreach ($shares as $name => $share) {
|
||||
$list = truncate($name,20);
|
||||
if ($share['luksStatus']>0) $list = "<span class='green-text'>$list</span>";
|
||||
elseif ($share['useCache']=='only') $list = "<span class='orange-text'>$list</span>";
|
||||
$list = "<a href=\"$path/Share?name=".urlencode($name)."\" class=\"blue-text\" title=\"$name settings\">".truncate($name,20)."</a>";
|
||||
if ($share['luksStatus']>0) $list = str_replace('blue-text','green-text',$list);
|
||||
elseif ($share['useCache']=='only') $list = str_replace('blue-text','orange-text',$list);
|
||||
$comment = truncate($share['comment'],40);
|
||||
$security = export_settings($var['shareNFSEnabled'], $sec_nfs[$name]);
|
||||
echo "<tr><td></td><td><i class='icon-folder'></i>$list</td><td>$comment</td><td>$security</td><td>-</td><td></td></tr>";
|
||||
@@ -344,9 +344,9 @@ if (!count($shares)) echo "<tr><td></td><td colspan='4' style='text-align:center
|
||||
<?if (!$group):?>
|
||||
<tbody><?
|
||||
foreach ($shares as $name => $share) {
|
||||
$list = truncate($name,20);
|
||||
if ($share['luksStatus']>0) $list = "<span class='green-text'>$list</span>";
|
||||
elseif ($share['useCache']=='only') $list = "<span class='orange-text'>$list</span>";
|
||||
$list = "<a href=\"$path/Share?name=".urlencode($name)."\" class=\"blue-text\" title=\"$name settings\">".truncate($name,20)."</a>";
|
||||
if ($share['luksStatus']>0) $list = str_replace('blue-text','green-text',$list);
|
||||
elseif ($share['useCache']=='only') $list = str_replace('blue-text','orange-text',$list);
|
||||
$comment = truncate($share['comment'],40);
|
||||
echo "<tr><td></td><td><i class='icon-folder'></i>$list</td><td>$comment</td><td>-</td><td>-</td><td></td></tr>";
|
||||
}
|
||||
@@ -359,7 +359,8 @@ if (!count($shares)) echo "<tr><td></td><td colspan='4' style='text-align:center
|
||||
<?if ($var['shareSMBEnabled']=='yes'):?>
|
||||
<tbody class='smb user user1' style='display:none'><?
|
||||
foreach ($users as $user) {
|
||||
$list = truncate($user['name'],20);
|
||||
$name = $user['name'];
|
||||
$list = "<a href=\"$path/UserEdit?name=".urlencode($name)."\" class=\"blue-text\" title=\"$name settings\">".truncate($name,20)."</a>";
|
||||
$desc = truncate($user['desc'],40);
|
||||
if ($list=='root') {
|
||||
$write = '-'; $read = '-';
|
||||
@@ -370,7 +371,7 @@ foreach ($users as $user) {
|
||||
if (strpos($sec[$share['name']]['readList'],$list)!==false) $read++;
|
||||
}
|
||||
}
|
||||
if ($user['passwd']=='yes') $list = "<span class='green-text'>$list</span>";
|
||||
if ($user['passwd']!='yes') $list = str_replace('blue-text','orange-text',$list);
|
||||
echo "<tr><td></td><td><i class='icon-user'></i>$list</td><td>$desc</td><td>$write</td><td>$read</td><td></td></tr>";
|
||||
}
|
||||
?></tbody>
|
||||
@@ -378,7 +379,8 @@ foreach ($users as $user) {
|
||||
<?if ($var['shareAFPEnabled']=='yes'):?>
|
||||
<tbody class='afp user user2' style='display:none'><?
|
||||
foreach ($users as $user) {
|
||||
$list = truncate($user['name'],20);
|
||||
$name = $user['name'];
|
||||
$list = "<a href=\"$path/UserEdit?name=".urlencode($name)."\" class=\"blue-text\" title=\"$name settings\">".truncate($name,20)."</a>";
|
||||
$desc = truncate($user['desc'],40);
|
||||
if ($list=='root') {
|
||||
$write = '-'; $read = '-';
|
||||
@@ -389,7 +391,7 @@ foreach ($users as $user) {
|
||||
if (strpos($sec_afp[$share['name']]['readList'],$list)!==false) $read++;
|
||||
}
|
||||
}
|
||||
if ($user['passwd']=='yes') $list = "<span class='green-text'>$list</span>";
|
||||
if ($user['passwd']!='yes') $list = str_replace('blue-text','orange-text',$list);
|
||||
echo "<tr><td></td><td><i class='icon-user'></i>$list</td><td>$desc</td><td>$write</td><td>$read</td><td></td></tr>";
|
||||
}
|
||||
?></tbody>
|
||||
@@ -397,10 +399,11 @@ foreach ($users as $user) {
|
||||
<?if ($var['shareNFSEnabled']=='yes'):?>
|
||||
<tbody class='nfs user user3' style='display:none'><?
|
||||
foreach ($users as $user) {
|
||||
$list = truncate($user['name'],20);
|
||||
$name = $user['name'];
|
||||
$list = "<a href=\"$path/UserEdit?name=".urlencode($name)."\" class=\"blue-text\" title=\"$name settings\">".truncate($name,20)."</a>";
|
||||
$desc = truncate($user['desc'],40);
|
||||
$write = '-'; $read = '-';
|
||||
if ($user['passwd']=='yes') $list = "<span class='green-text'>$list</span>";
|
||||
if ($user['passwd']!='yes') $list = str_replace('blue-text','orange-text',$list);
|
||||
echo "<tr><td></td><td><i class='icon-user'></i>$list</td><td>$desc</td><td>$write</td><td>$read</td><td></td></tr>";
|
||||
}
|
||||
?></tbody>
|
||||
@@ -408,9 +411,10 @@ foreach ($users as $user) {
|
||||
<?if (!$group):?>
|
||||
<tbody><?
|
||||
foreach ($users as $user) {
|
||||
$list = truncate($user['name'],20);
|
||||
$name = $user['name'];
|
||||
$list = "<a href=\"$path/UserEdit?name=".urlencode($name)."\" class=\"blue-text\" title=\"$name settings\">".truncate($name,20)."</a>";
|
||||
$desc = truncate($user['desc'],40);
|
||||
if ($user['passwd']=='yes') $list = "<span class='green-text'>$list</span>";
|
||||
if ($user['passwd']!='yes') $list = str_replace('blue-text','orange-text',$list);
|
||||
echo "<tr><td></td><td><i class='icon-user'></i>$list</td><td>$desc</td><td>-</td><td>-</td><td></td></tr>";
|
||||
}
|
||||
?></tbody>
|
||||
@@ -591,7 +595,7 @@ function update15() {
|
||||
$('#ups_bcharge').html(data[1]);
|
||||
$('#ups_timeleft').html(data[2]);
|
||||
$('#ups_nompower').html(data[3]);
|
||||
$('#ups_loadpct').html(data[5].replace('Percent','%')+' ('+data[4].replace('Watts','W')+')');
|
||||
$('#ups_loadpct').html(data[5].replace('Percent','%')+data[4].replace(/>/,'> (').replace(/Watts|-/,'W)'));
|
||||
});
|
||||
<?endif;?>
|
||||
$.post('<?=$url?>',{cmd:'status',number:'<?=$display['number']?>'},function(data) {$('span.info.title').html(data);});
|
||||
@@ -607,14 +611,14 @@ function update30() {
|
||||
$.post('<?=$url?>',{cmd:'port',view:tag,ports:'<?=implode(',',$ports)?>'},function(data) {
|
||||
$.each(data.split('\0'),function(k,v) {$('#'+tag+k).html(v);});
|
||||
});
|
||||
$.post('<?=$url?>',{cmd:'array',hot:'<?=$display['hot']?>',max:'<?=$display['max']?>',unit:'<?=$display['unit']?>',text:<?=$display['text']?>,critical:'<?=$display['critical']?>',warning:'<?=$display['warning']?>'},function(d) {
|
||||
$.post('<?=$url?>',{cmd:'array',path:'<?=$path?>',hot:'<?=$display['hot']?>',max:'<?=$display['max']?>',unit:'<?=$display['unit']?>',text:<?=$display['text']?>,critical:'<?=$display['critical']?>',warning:'<?=$display['warning']?>'},function(d) {
|
||||
var data = d.split('\0');
|
||||
var info = moreInfo(data,'Array');
|
||||
$('#array_list').html(data[0]);
|
||||
$('#array_info').parent().css('display',info?'':'none');
|
||||
$('#array_info').html(info);
|
||||
smartMenu('#array_list');
|
||||
$.post('<?=$url?>',{cmd:'cache',hot:'<?=$display['hot']?>',max:'<?=$display['max']?>',unit:'<?=$display['unit']?>',text:<?=$display['text']?>,critical:'<?=$display['critical']?>',warning:'<?=$display['warning']?>'},function(d) {
|
||||
$.post('<?=$url?>',{cmd:'cache',path:'<?=$path?>',hot:'<?=$display['hot']?>',max:'<?=$display['max']?>',unit:'<?=$display['unit']?>',text:<?=$display['text']?>,critical:'<?=$display['critical']?>',warning:'<?=$display['warning']?>'},function(d) {
|
||||
var data = d.split('\0');
|
||||
var info = moreInfo(data,'Cache');
|
||||
$('#cache_list').html(data[0]);
|
||||
@@ -622,7 +626,7 @@ function update30() {
|
||||
$('#cache_info').html(info);
|
||||
smartMenu('#cache_list');
|
||||
<?if ($devs):?>
|
||||
$.post('<?=$url?>',{cmd:'extra',hot:'<?=$display['hot']?>',max:'<?=$display['max']?>',unit:'<?=$display['unit']?>',text:<?=$display['text']?>,critical:'<?=$display['critical']?>',warning:'<?=$display['warning']?>'},function(d) {
|
||||
$.post('<?=$url?>',{cmd:'extra',path:'<?=$path?>',hot:'<?=$display['hot']?>',max:'<?=$display['max']?>',unit:'<?=$display['unit']?>',text:<?=$display['text']?>,critical:'<?=$display['critical']?>',warning:'<?=$display['warning']?>'},function(d) {
|
||||
var data = d.split('\0');
|
||||
var info = moreInfo(data,'Unassigned');
|
||||
$('#extra_list').html(data[0]);
|
||||
|
||||
@@ -40,15 +40,15 @@ switch ($display['theme']) {
|
||||
case 'gray':
|
||||
case 'azure':
|
||||
echo "span.array,span.system{margin-left:33.33%;width:65.5%;padding:2px 10px;font-weight:bold;border:solid 1px #606E7F;border-bottom:none}\n";
|
||||
echo "textarea.menu{margin-left:33.33%;width:65.5%;margin-bottom:12px;padding:4px 10px;font-family:bitstream;resize:none;border-top:none}\n";
|
||||
echo "textarea.menu{margin-left:33.33%;width:65.5%;margin-bottom:12px;padding:4px 10px;font-family:bitstream;border-top:none}\n";
|
||||
break;
|
||||
case 'white':
|
||||
echo "span.array,span.system{margin-left:33.33%;width:65.5%;padding:2px 10px;font-weight:bold;border:solid 1px #1c1c1c;border-bottom:none}\n";
|
||||
echo "textarea.menu{margin-left:33.33%;width:65.5%;margin-bottom:12px;padding:4px 10px;font-family:bitstream;resize:none;border:1px solid #1c1b1b;border-top:none}\n";
|
||||
echo "textarea.menu{margin-left:33.33%;width:65.5%;margin-bottom:12px;padding:4px 10px;font-family:bitstream;border:1px solid #1c1b1b;border-top:none}\n";
|
||||
break;
|
||||
case 'black':
|
||||
echo "span.array,span.system{margin-left:33.33%;width:65.5%;padding:2px 10px;font-weight:bold;border:solid 1px #f2f2f2;border-bottom:none}\n";
|
||||
echo "textarea.menu{margin-left:33.33%;width:65.5%;margin-bottom:12px;padding:4px 10px;font-family:bitstream;resize:none;border:1px solid #f2f2f2;border-top:none}\n";
|
||||
echo "textarea.menu{margin-left:33.33%;width:65.5%;margin-bottom:12px;padding:4px 10px;font-family:bitstream;border:1px solid #f2f2f2;border-top:none}\n";
|
||||
break;
|
||||
}
|
||||
?>
|
||||
@@ -102,7 +102,7 @@ function setDefault(form) {
|
||||
var label = (i) ? area.shift():title;
|
||||
var start = (area[0]==menu);
|
||||
var checked = start ? ' checked':'';
|
||||
if (i) label += "<span style='float:right'><input type='checkbox' id='input-"+i+"' title='Set default boot menu' onchange='changeMenu(this.form,this.id,true)'"+checked+"></span>";
|
||||
if (i) label += "<span style='float:right'><input type='radio' id='input-"+i+"' title='Set default boot menu' onchange='changeMenu(this.form,this.id,true)'"+checked+"></span>";
|
||||
$('#label-'+i).html(label).prop('class',start ? 'array':'system');
|
||||
if (start) area.shift();
|
||||
$(this).val(area.join('\n')).prop('rows',area.length).trigger('change');
|
||||
@@ -216,7 +216,7 @@ Syslinux configuration:
|
||||
$start = in_array($menu,$area);
|
||||
if ($start) unset($area[array_search($menu,$area)]);
|
||||
?><span id="label-<?=$i?>" class="<?=$start?'array':'system'?>"><?=$label?>
|
||||
<?if ($i):?><span style="float:right"><input type="checkbox" id="input-<?=$i?>" class="menu" <?=$start?'checked':''?> title="Set default boot menu" onchange="changeMenu(this.form,this.id,true)"></span><?endif;?></span>
|
||||
<?if ($i):?><span style="float:right"><input type="radio" id="input-<?=$i?>" class="menu" <?=$start?'checked':''?> title="Set default boot menu" onchange="changeMenu(this.form,this.id,true)"></span><?endif;?></span>
|
||||
<textarea class="menu" id="menu-<?=$i++?>" spellcheck="false" cols="80" rows="<?=count($area)?>" maxlength="2048"><?=implode("\n",$area)?></textarea>
|
||||
<?endforeach;?>
|
||||
|
||||
|
||||
@@ -114,16 +114,18 @@ function stage($i) {
|
||||
return $t;
|
||||
}
|
||||
function device_name(&$disk, $array) {
|
||||
global $path;
|
||||
if ($array) {
|
||||
switch ($disk['type']) {
|
||||
case 'Flash' : $type = 'usb'; break;
|
||||
case 'Parity': $type = $disk['rotational'] ? 'disk' : 'nvme'; break;
|
||||
case 'Data' :
|
||||
case 'Cache' : $type = $disk['rotational'] ? ($disk['luksState'] ? 'disk-encrypted' : 'disk') : 'nvme'; break;
|
||||
}
|
||||
return "<i class='icon-$type'></i> ".my_disk($disk['name']);
|
||||
$name = my_disk($disk['name']);
|
||||
return "<i class='icon-$type'></i> <a href=\"".htmlspecialchars("$path/Device?name={$disk['name']}")."\" title=\"$name settings\">$name</a>";
|
||||
} else {
|
||||
return "<i class='icon-disk'></i> {$disk['device']}";
|
||||
$name = $disk['device'];
|
||||
return "<i class='icon-disk'></i> <a href=\"".htmlspecialchars("$path/New?name=$name")."\" title=\"$name settings\">$name</a>";
|
||||
}
|
||||
}
|
||||
function device_status(&$disk, $array, &$error, &$warning) {
|
||||
@@ -239,9 +241,10 @@ function extra_group() {
|
||||
}
|
||||
switch ($_POST['cmd']) {
|
||||
case 'array':
|
||||
$var = @parse_ini_file('state/var.ini') ?: [];
|
||||
$disks = @array_filter(parse_ini_file('state/disks.ini',true),'active_disks') ?: [];
|
||||
$saved = @parse_ini_file('state/monitor.ini',true) ?: [];
|
||||
$path = $_POST['path'];
|
||||
$var = (array)parse_ini_file('state/var.ini');
|
||||
$disks = (array)array_filter(parse_ini_file('state/disks.ini',true),'active_disks');
|
||||
$saved = @(array)parse_ini_file('state/monitor.ini',true);
|
||||
require_once "$docroot/webGui/include/CustomMerge.php";
|
||||
require_once "$docroot/webGui/include/Preselect.php";
|
||||
$error = $warning = $red = $orange = $fail = $smart = $full = $high = 0;
|
||||
@@ -250,9 +253,10 @@ case 'array':
|
||||
echo "\0".($error+$warning)."\0".($red+$orange)."\0".($fail+$smart)."\0".($full+$high);
|
||||
break;
|
||||
case 'cache':
|
||||
$var = @parse_ini_file('state/var.ini') ?: [];
|
||||
$disks = @array_filter(parse_ini_file('state/disks.ini',true),'active_disks') ?: [];
|
||||
$saved = @parse_ini_file('state/monitor.ini',true) ?: [];
|
||||
$path = $_POST['path'];
|
||||
$var = (array)parse_ini_file('state/var.ini');
|
||||
$disks = (array)array_filter(parse_ini_file('state/disks.ini',true),'active_disks');
|
||||
$saved = @(array)parse_ini_file('state/monitor.ini',true);
|
||||
require_once "$docroot/webGui/include/CustomMerge.php";
|
||||
require_once "$docroot/webGui/include/Preselect.php";
|
||||
$error = $warning = $red = $orange = $fail = $smart = $full = $high = 0;
|
||||
@@ -260,9 +264,10 @@ case 'cache':
|
||||
echo "\0".($error+$warning)."\0".($red+$orange)."\0".($fail+$smart)."\0".($full+$high);
|
||||
break;
|
||||
case 'extra':
|
||||
$var = @parse_ini_file('state/var.ini') ?: [];
|
||||
$disks = @parse_ini_file('state/devs.ini',true) ?: [];
|
||||
$saved = @parse_ini_file('state/monitor.ini',true) ?: [];
|
||||
$path = $_POST['path'];
|
||||
$var = (array)parse_ini_file('state/var.ini');
|
||||
$disks = (array)parse_ini_file('state/devs.ini',true);
|
||||
$saved = @(array)parse_ini_file('state/monitor.ini',true);
|
||||
$smartALL = '/boot/config/smart-all.cfg';
|
||||
if (file_exists($smartALL)) $var = array_merge($var, parse_ini_file($smartALL));
|
||||
require_once "$docroot/webGui/include/Preselect.php";
|
||||
|
||||
@@ -546,7 +546,7 @@ $(function() {
|
||||
$.post('/webGui/include/Notify.php',{cmd:'init'},function(){timers.notifier = setTimeout(notifier,0);});
|
||||
<?endif;?>
|
||||
$('input[value="Apply"],input[name="cmdEditShare"],input[name="cmdUserEdit"]').prop('disabled',true);
|
||||
$('form').find('select,input[type=text],input[type=number],input[type=password],input[type=checkbox],input[type=file],textarea').each(function(){$(this).on('input change',function() {
|
||||
$('form').find('select,input[type=text],input[type=number],input[type=password],input[type=checkbox],input[type=radio],input[type=file],textarea').each(function(){$(this).on('input change',function() {
|
||||
var form = $(this).parentsUntil('form').parent();
|
||||
form.find('input[value="Apply"],input[name="cmdEditShare"],input[name="cmdUserEdit"]').not('input.lock').prop('disabled',false);
|
||||
form.find('input[value="Done"]').not('input.lock').val('Reset').prop('onclick',null).off('click').click(function(){refresh(form.offset().top)});
|
||||
|
||||
@@ -15,11 +15,11 @@ $docroot = $docroot ?? $_SERVER['DOCUMENT_ROOT'] ?: '/usr/local/emhttp';
|
||||
require_once "$docroot/webGui/include/Helpers.php";
|
||||
|
||||
$path = $_POST['path'];
|
||||
$var = parse_ini_file('state/var.ini');
|
||||
$devs = parse_ini_file('state/devs.ini',true);
|
||||
$disks = parse_ini_file('state/disks.ini',true);
|
||||
$sec = parse_ini_file('state/sec.ini',true);
|
||||
$diskio= @parse_ini_file('state/diskload.ini');
|
||||
$var = (array)parse_ini_file('state/var.ini');
|
||||
$devs = (array)parse_ini_file('state/devs.ini',true);
|
||||
$disks = (array)parse_ini_file('state/disks.ini',true);
|
||||
$sec = (array)parse_ini_file('state/sec.ini',true);
|
||||
$diskio= @(array)parse_ini_file('state/diskload.ini');
|
||||
$sum = ['count'=>0, 'temp'=>0, 'fsSize'=>0, 'fsUsed'=>0, 'fsFree'=>0, 'ioReads'=>0, 'ioWrites'=>0, 'numReads'=>0, 'numWrites'=>0, 'numErrors'=>0];
|
||||
extract(parse_plugin_cfg('dynamix',true));
|
||||
|
||||
|
||||
@@ -91,11 +91,11 @@ span.tub span[id^='txt-tub']{margin-top:7px}
|
||||
.green{color:#4f8a10;padding-left:5px;padding-right:5px}
|
||||
.red{color:#f0000c;padding-left:5px;padding-right:5px}
|
||||
.orange{color:#e68a00;padding-left:5px;padding-right:5px}
|
||||
.blue{color:#3b5998;padding-left:5px;padding-right:5px}
|
||||
.blue{color:#486dba;padding-left:5px;padding-right:5px}
|
||||
.green-text,.passed{color:#4f8a10}
|
||||
.red-text,.failed{color:#f0000c}
|
||||
.orange-text,.warning{color:#e68a00}
|
||||
.blue-text{color:#3b5998}
|
||||
.blue-text{color:#486dba}
|
||||
.grey-text{color:#606060}
|
||||
.green-orb{color:#33cc33}
|
||||
.grey-orb{color:#c0c0c0}
|
||||
@@ -258,7 +258,7 @@ span.three{margin-left:-23px}
|
||||
span.tub{margin-right:8px;font-size:2.4rem;cursor:pointer}
|
||||
span.score{font-size:1.1rem;color:#ffffff;position:absolute}
|
||||
span#dropbox{background:none;line-height:6rem;margin-right:20px}
|
||||
span.outer{margin-bottom:20px;margin-right:20px}
|
||||
span.outer{margin-bottom:20px;margin-right:0}
|
||||
span.hand{cursor:pointer}
|
||||
span.outer.started>img,span.outer.started>i.img{opacity:1.0}
|
||||
span.outer.stopped>img,span.outer.stopped>i.img{opacity:0.3}
|
||||
|
||||
@@ -81,11 +81,11 @@ textarea{resize:none}
|
||||
.green{color:#4f8a10;padding-left:5px;padding-right:5px}
|
||||
.red{color:#f0000c;padding-left:5px;padding-right:5px}
|
||||
.orange{color:#e68a00;padding-left:5px;padding-right:5px}
|
||||
.blue{color:#3b5998;padding-left:5px;padding-right:5px}
|
||||
.blue{color:#486dba;padding-left:5px;padding-right:5px}
|
||||
.green-text,.passed{color:#4f8a10}
|
||||
.red-text,.failed{color:#f0000c}
|
||||
.orange-text,.warning{color:#e68a00}
|
||||
.blue-text{color:#3b5998}
|
||||
.blue-text{color:#486dba}
|
||||
.grey-text{color:#606060}
|
||||
.green-orb{color:#33cc33}
|
||||
.grey-orb{color:#c0c0c0}
|
||||
@@ -243,7 +243,7 @@ span.two{margin-left:-20px}
|
||||
span.three{margin-left:-23px}
|
||||
span.tub{margin-right:8px;font-size:2.4rem;cursor:pointer}
|
||||
span.score{font-size:1.2rem;color:#1c1b1b;position:absolute}
|
||||
span.outer{margin-bottom:20px;margin-right:20px}
|
||||
span.outer{margin-bottom:20px;margin-right:0}
|
||||
span.hand{cursor:pointer}
|
||||
span.outer.started>img,span.outer.started>i.img{opacity:1.0}
|
||||
span.outer.stopped>img,span.outer.stopped>i.img{opacity:0.3}
|
||||
|
||||
@@ -91,11 +91,11 @@ span.tub span[id^='txt-tub']{margin-top:7px}
|
||||
.green{color:#4f8a10;padding-left:5px;padding-right:5px}
|
||||
.red{color:#f0000c;padding-left:5px;padding-right:5px}
|
||||
.orange{color:#e68a00;padding-left:5px;padding-right:5px}
|
||||
.blue{color:#3b5998;padding-left:5px;padding-right:5px}
|
||||
.blue{color:#486dba;padding-left:5px;padding-right:5px}
|
||||
.green-text,.passed{color:#4f8a10}
|
||||
.red-text,.failed{color:#f0000c}
|
||||
.orange-text,.warning{color:#e68a00}
|
||||
.blue-text{color:#3b5998}
|
||||
.blue-text{color:#486dba}
|
||||
.grey-text{color:#606060}
|
||||
.green-orb{color:#33cc33}
|
||||
.grey-orb{color:#c0c0c0}
|
||||
@@ -258,7 +258,7 @@ span.three{margin-left:-23px}
|
||||
span.tub{margin-right:8px;font-size:2.4rem;cursor:pointer}
|
||||
span.score{font-size:1.1rem;color:#ffffff;position:absolute}
|
||||
span#dropbox{background:none;line-height:6rem;margin-right:20px}
|
||||
span.outer{margin-bottom:20px;margin-right:20px}
|
||||
span.outer{margin-bottom:20px;margin-right:0}
|
||||
span.hand{cursor:pointer}
|
||||
span.outer.started>img,span.outer.started>i.img{opacity:1.0}
|
||||
span.outer.stopped>img,span.outer.stopped>i.img{opacity:0.3}
|
||||
|
||||
@@ -81,11 +81,11 @@ textarea{resize:none}
|
||||
.green{color:#4f8a10;padding-left:5px;padding-right:5px}
|
||||
.red{color:#f0000c;padding-left:5px;padding-right:5px}
|
||||
.orange{color:#e68a00;padding-left:5px;padding-right:5px}
|
||||
.blue{color:#3b5998;padding-left:5px;padding-right:5px}
|
||||
.blue{color:#486dba;padding-left:5px;padding-right:5px}
|
||||
.green-text,.passed{color:#4f8a10}
|
||||
.red-text,.failed{color:#f0000c}
|
||||
.orange-text,.warning{color:#e68a00}
|
||||
.blue-text{color:#3b5998}
|
||||
.blue-text{color:#486dba}
|
||||
.grey-text{color:#606060}
|
||||
.green-orb{color:#33cc33}
|
||||
.grey-orb{color:#c0c0c0}
|
||||
@@ -243,7 +243,7 @@ span.two{margin-left:-20px}
|
||||
span.three{margin-left:-23px}
|
||||
span.tub{margin-right:8px;font-size:2.4rem;cursor:pointer}
|
||||
span.score{font-size:1.2rem;color:#1c1b1b;position:absolute}
|
||||
span.outer{margin-bottom:20px;margin-right:20px}
|
||||
span.outer{margin-bottom:20px;margin-right:0}
|
||||
span.hand{cursor:pointer}
|
||||
span.outer.started>img,span.outer.started>i.img{opacity:1.0}
|
||||
span.outer.stopped>img,span.outer.stopped>i.img{opacity:0.3}
|
||||
|
||||
Reference in New Issue
Block a user