0) { if ($os) return $remote; if (!$unraid = get_plugin_attr('Unraid', "/tmp/plugins/$plugin.plg")) return $remote; $server = get_plugin_attr('version', "/var/log/plugins/unRAIDServer.plg"); if (version_compare($server, $unraid, '>=')) return $remote; } } function _var(&$name, $key, $default='') { return $name[$key] ?? $default; } function get_value(&$name, $key, $default) { global $var; $value = $name[$key] ?? -1; return $value!==-1 ? $value : ($var[$key] ?? $default); } function get_ctlr_options(&$type, &$disk) { if (!$type) return; $ports = []; if (isset($disk['smPort1'])) $ports[] = $disk['smPort1']; if (isset($disk['smPort2'])) $ports[] = $disk['smPort2']; if (isset($disk['smPort3'])) $ports[] = $disk['smPort3']; $type .= ($ports ? ','.implode($disk['smGlue'] ?? ',',$ports) : ''); } function port_name($port) { return substr($port,-2)!='n1' ? $port : substr($port,0,-2); } function exceed($value, $limit, $top=100) { return ($value>$limit && $limit>0 && $value<=$top); } function ipaddr($ethX='eth0', $prot=4) { global $$ethX; switch (_var($$ethX,'PROTOCOL:0')) { case 'ipv4': return _var($$ethX,'IPADDR:0'); case 'ipv6': return _var($$ethX,'IPADDR6:0'); case 'ipv4+ipv6': switch ($prot) { case 4: return _var($$ethX,'IPADDR:0'); case 6: return _var($$ethX,'IPADDR6:0'); default:return [_var($$ethX,'IPADDR:0'),_var($$ethX,'IPADDR6:0')];} default: return _var($$ethX,'IPADDR:0'); } } // convert strftime to date format function my_date($fmt, $time) { $legacy = ['%c' => 'D j M Y h:i:s A T','%A' => 'l','%Y' => 'Y','%B' => 'F','%e' => 'j','%d' => 'd','%m' => 'm','%I' => 'h','%H' => 'H','%M' => 'i','%S' => 's','%p' => 'a','%R' => 'H:i', '%F' => 'Y-m-d', '%T' => 'H:i:s']; return date(strtr($fmt,$legacy), $time); } ?>