mirror of
https://github.com/unraid/webgui.git
synced 2026-01-14 05:30:07 -06:00
@@ -28,7 +28,7 @@ $dockerManPaths = [
|
||||
];
|
||||
|
||||
// load network variables if needed.
|
||||
if (!isset($eth0) && is_file("$docroot/state/network.ini")) extract(parse_ini_file("$docroot/state/network.ini",true));
|
||||
if (!isset($eth0)) extract(parse_ini_file("$docroot/state/network.ini",true));
|
||||
$host = $eth0['IPADDR:0'] ?? '0.0.0.0';
|
||||
|
||||
// Docker configuration file - guaranteed to exist
|
||||
|
||||
@@ -16,7 +16,7 @@ Tag="thumbs-up"
|
||||
?>
|
||||
<?
|
||||
$empty = "<tr><td colspan='6'><div class='spinner'></div></td><tr>";
|
||||
$version = $date = 'unknown';
|
||||
$version = $branch = $date = 'unknown';
|
||||
$bzroot = file_exists('/boot/previous/bzroot');
|
||||
$check = $notify['unraidos'] ? 0 : 1;
|
||||
|
||||
@@ -29,6 +29,7 @@ if (file_exists('/boot/previous/changes.txt')) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
$branch = strpos($version,'rc')===false ? 'Stable' : 'Next';
|
||||
}
|
||||
?>
|
||||
<style>input[value='Install'],input[value='Update'],input[value='Restore']{margin:0}</style>
|
||||
@@ -86,6 +87,6 @@ $(function() {
|
||||
<thead><tr><th></th><th>Component</th><th>Author</th><th>Version</th><th>Status</th><th>Branch</th></tr></thead>
|
||||
<tbody id="os_list"><?=$empty?></tbody>
|
||||
<?if ($bzroot):?>
|
||||
<tbody id="previous" style="display:none"><tr><td><img src="/plugins/unRAIDServer/images/unRAIDServer.png"></td><td><b>unRAID Server OS (previous)</b></td><td>LimeTech</td><td><?=$version?></td><td><input type="button" value="Restore" onclick="downgrade()"></td><td></td></tbody>
|
||||
<tbody id="previous" style="display:none"><tr><td><img src="/plugins/unRAIDServer/images/unRAIDServer.png"></td><td><b>unRAID Server OS (previous)</b></td><td>LimeTech</td><td><?=$version?></td><td><input type="button" value="Restore" onclick="downgrade()"></td><td><?=$branch?></td></tbody>
|
||||
<?endif;?>
|
||||
</table>
|
||||
|
||||
@@ -123,24 +123,24 @@ function stage($i) {
|
||||
}
|
||||
} else {
|
||||
$d = $i ? ($now ? $D : today($i)) : today(last_day()-6);
|
||||
$x = $i ?: last_day()-6;
|
||||
$D = mkdate($d, $x);
|
||||
$s = $i ?: last_day()-6;
|
||||
$D = mkdate($d, $s);
|
||||
$t = mktime($h,$m,0,$M,$D,$Y)-$time; // first day
|
||||
if ($t < 0) {
|
||||
$D = mkdate(next_day($d), $x);
|
||||
$D = mkdate(next_day($d), $s);
|
||||
$t = mktime($h,$m,0,$M,$D,$Y)-$time; // next day
|
||||
}
|
||||
if ($t < 0) {
|
||||
$M = find_month($M+1);
|
||||
$x = $i ?: last_day()-6;
|
||||
$D = mkdate(today($x), $x);
|
||||
$s = $i ?: last_day()-6;
|
||||
$D = mkdate(today($s), $s);
|
||||
$t = mktime($h,$m,0,$M,$D,$Y)-$time; // next month
|
||||
}
|
||||
if ($t < 0) {
|
||||
$Y++;
|
||||
$M = find_month(1);
|
||||
$x = $i ?: last_day()-6;
|
||||
$D = mkdate(today($x), $x);
|
||||
$s = $i ?: last_day()-6;
|
||||
$D = mkdate(today($s), $s);
|
||||
$t = mktime($h,$m,0,$M,$D,$Y)-$time; // next year
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
<title><?=$var['NAME']?>/<?=$myPage['name']?></title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="format-detection" content="telephone=no">
|
||||
<meta name="robots" content="noindex">
|
||||
<link type="image/png" rel="shortcut icon" href="/webGui/images/<?=$var['mdColor']?>.png">
|
||||
<link type="text/css" rel="stylesheet" href="<?autov("/webGui/styles/default-fonts.css")?>">
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?PHP
|
||||
/* Copyright 2005-2017, Lime Technology
|
||||
* Copyright 2012-2017, Bergware International.
|
||||
/* Copyright 2005-2018, Lime Technology
|
||||
* Copyright 2012-2018, Bergware International.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License version 2,
|
||||
@@ -381,7 +381,7 @@ case 'cache':
|
||||
case 'open':
|
||||
foreach ($devs as $disk) {
|
||||
$dev = $disk['device'];
|
||||
$data = explode(' ',$diskio[$dev] ?? '0 0');
|
||||
$data = explode(' ',$diskio[$dev] ?? '0 0 0 0');
|
||||
$disk['name'] = $dev;
|
||||
$disk['type'] = 'New';
|
||||
$disk['color'] = read_disk($dev,'color');
|
||||
@@ -406,7 +406,7 @@ case 'parity':
|
||||
if ($var['mdResync']>0) {
|
||||
$data[] = my_scale($var['mdResync']*1024,$unit,-1)." $unit";
|
||||
$data[] = my_clock(floor((time()-$var['sbUpdated'])/60));
|
||||
$data[] = my_scale($var['mdResyncPos']*1024,$unit)." $unit (".number_format(($var['mdResyncPos']/($var['mdResync']/100+1)),1,substr($display['number'],0,1),'')." %)";
|
||||
$data[] = my_scale($var['mdResyncPos']*1024,$unit)." $unit (".number_format(($var['mdResyncPos']/($var['mdResync']/100+1)),1,$display['number'][0],'')." %)";
|
||||
$data[] = my_scale($var['mdResyncDb']*1024/$var['mdResyncDt'],$unit, 1)." $unit/sec";
|
||||
$data[] = my_clock(round(((($var['mdResyncDt']*(($var['mdResync']-$var['mdResyncPos'])/($var['mdResyncDb']/100+1)))/100)/60),0));
|
||||
$data[] = $var['sbSyncErrs'];
|
||||
|
||||
@@ -219,11 +219,11 @@ label+.content{margin-top:64px}
|
||||
div.tabs{position:relative;margin:110px 30px 30px 100px;background-color:#E4E2E4}
|
||||
div.tab{float:left;margin-top:23px}
|
||||
div.tab input[id^='tab']{display:none}
|
||||
div.tab [type=radio]+label:hover{background:#606E7F;color:#B0B0B0;cursor:pointer;border-color:#0072C6}
|
||||
div.tab [type=radio]:checked+label{cursor:default;background:#606E7F;color:#B0B0B0}
|
||||
div.tab [type=radio]+label:hover{cursor:pointer;border-color:#004E86;opacity:1}
|
||||
div.tab [type=radio]:checked+label{cursor:default;background:transparent;color:#606E7F;border-color:#004E86;opacity:1}
|
||||
div.tab [type=radio]+label~.content{display:none}
|
||||
div.tab [type=radio]:checked+label~.content{display:inline}
|
||||
div.tab [type=radio]+label{position:relative;padding:10px 10px;margin-right:2px;border-top-left-radius:12px;border-top-right-radius:12px;border:#004E86 1px solid;border-bottom:none}
|
||||
div.tab [type=radio]+label{position:relative;padding:10px 10px;margin-right:2px;border-top-left-radius:12px;border-top-right-radius:12px;background:#606E7F;color:#B0B0B0;border:#8B98A7 1px solid;border-bottom:none;opacity:0.5}
|
||||
div.tab [type=radio]+label img{display:none}
|
||||
div.Panel{width:25%;height:auto;float:left;margin:0;padding:5px;border-right:#F3F0F4 1px solid;border-bottom:#F3F0F4 1px solid;box-sizing:border-box}
|
||||
div.Panel:hover{background-color:#EDEAEF}
|
||||
|
||||
@@ -211,11 +211,11 @@ div.content.shift{margin-top:-70px}
|
||||
div.tabs{position:relative;margin:24px 0 0 0}
|
||||
div.tab{float:left;margin:0 0 12px 0}
|
||||
div.tab input[id^="tab"]{display:none}
|
||||
div.tab [type=radio]+label:hover{background:#000000;color:#478406;cursor:pointer}
|
||||
div.tab [type=radio]:checked+label{cursor:default;background:-webkit-radial-gradient(#303030,#505050);background:linear-gradient(#303030,#505050);color:#808080}
|
||||
div.tab [type=radio]+label:hover{background:transparent;color:#478406;cursor:pointer;opacity:1}
|
||||
div.tab [type=radio]:checked+label{cursor:default;background:transparent;color:#808080;opacity:1}
|
||||
div.tab [type=radio]+label~.content{display:none}
|
||||
div.tab [type=radio]:checked+label~.content{display:inline}
|
||||
div.tab [type=radio]+label{position:relative;font-size:14px;padding:4px 10px;margin-right:2px;border-top-left-radius:5px;border-top-right-radius:5px;border:1px solid #303030;border-bottom:1px solid #606060;background:-webkit-radial-gradient(#101010,#202020);background:linear-gradient(#101010,#202020)}
|
||||
div.tab [type=radio]+label{position:relative;font-size:14px;padding:4px 10px;margin-right:2px;border-top-left-radius:5px;border-top-right-radius:5px;border:1px solid #303030;border-bottom:none;background:-webkit-radial-gradient(#101010,#202020);background:linear-gradient(#101010,#202020);opacity:0.6}
|
||||
div.tab [type=radio]+label img{padding-right:4px}
|
||||
div.Panel{text-align:center;float:left;margin:0 30px 30px 12px;height:80px}
|
||||
div.Panel .PanelText{padding-top:10px}
|
||||
|
||||
@@ -219,11 +219,11 @@ label+.content{margin-top:64px}
|
||||
div.tabs{position:relative;margin:110px 30px 30px 100px;background-color:#1B1D1B}
|
||||
div.tab{float:left;margin-top:23px}
|
||||
div.tab input[id^='tab']{display:none}
|
||||
div.tab [type=radio]+label:hover{background:#606E7F;color:#B0B0B0;cursor:pointer;border-color:#0072C6}
|
||||
div.tab [type=radio]:checked+label{cursor:default;background:#606E7F;color:#B0B0B0}
|
||||
div.tab [type=radio]+label:hover{cursor:pointer;border-color:#0072C6;opacity:1}
|
||||
div.tab [type=radio]:checked+label{cursor:default;background:transparent;color:#606E7F;border-color:#004E86;opacity:1}
|
||||
div.tab [type=radio]+label~.content{display:none}
|
||||
div.tab [type=radio]:checked+label~.content{display:inline}
|
||||
div.tab [type=radio]+label{position:relative;padding:10px 10px;margin-right:2px;border-top-left-radius:12px;border-top-right-radius:12px;border:#004E86 1px solid;border-bottom:none}
|
||||
div.tab [type=radio]+label{position:relative;padding:10px 10px;margin-right:2px;border-top-left-radius:12px;border-top-right-radius:12px;background:#606E7F;color:#B0B0B0;border:#8B98A7 1px solid;border-bottom:none;opacity:0.5}
|
||||
div.tab [type=radio]+label img{display:none}
|
||||
div.Panel{width:25%;height:auto;float:left;margin:0;padding:5px;border-right:#0C0F0B 1px solid;border-bottom:#0C0F0B 1px solid;box-sizing:border-box}
|
||||
div.Panel:hover{background-color:#121510}
|
||||
|
||||
@@ -211,11 +211,11 @@ div.content.shift{margin-top:-70px}
|
||||
div.tabs{position:relative;margin:24px 0 0 0}
|
||||
div.tab{float:left;margin:0 0 12px 0}
|
||||
div.tab input[id^="tab"]{display:none}
|
||||
div.tab [type=radio]+label:hover{background:#FFFFFF;color:#478406;cursor:pointer}
|
||||
div.tab [type=radio]:checked+label{cursor:default;background:-webkit-radial-gradient(#F8F8F8,#E8E8E8);background:linear-gradient(#F8F8F8,#E8E8E8);color:#303030}
|
||||
div.tab [type=radio]+label:hover{background:transparent;color:#478406;cursor:pointer;opacity:1}
|
||||
div.tab [type=radio]:checked+label{cursor:default;background:transparent;color:#303030;opacity:1}
|
||||
div.tab [type=radio]+label~.content{display:none}
|
||||
div.tab [type=radio]:checked+label~.content{display:inline}
|
||||
div.tab [type=radio]+label{position:relative;font-size:14px;padding:4px 10px;margin-right:2px;border-top-left-radius:5px;border-top-right-radius:5px;border:1px solid #E8E8E8;border-bottom-color:#D8D8D8;background:-webkit-radial-gradient(#D8D8D8,#B8B8B8);background:linear-gradient(#D8D8D8,#B8B8B8)}
|
||||
div.tab [type=radio]+label{position:relative;font-size:14px;padding:4px 10px;margin-right:2px;border-top-left-radius:5px;border-top-right-radius:5px;border:1px solid #E8E8E8;border-bottom:none;background:-webkit-radial-gradient(#D8D8D8,#B8B8B8);background:linear-gradient(#D8D8D8,#B8B8B8);opacity:0.6}
|
||||
div.tab [type=radio]+label img{padding-right:4px}
|
||||
div.Panel{text-align:center;float:left;margin:0 30px 30px 12px;height:80px}
|
||||
div.Panel .PanelText{padding-top:10px}
|
||||
|
||||
Reference in New Issue
Block a user