diff --git a/plugins/dynamix.plugin.manager/scripts/PluginAPI.php b/plugins/dynamix.plugin.manager/scripts/PluginAPI.php index b3b0974e3..d5a7d8a0b 100644 --- a/plugins/dynamix.plugin.manager/scripts/PluginAPI.php +++ b/plugins/dynamix.plugin.manager/scripts/PluginAPI.php @@ -1,6 +1,6 @@ false)); - return; -} + if ( ! $plugin || ! file_exists("/var/log/plugins/$plugin") ) { + echo json_encode(array("updateAvailable"=>false)); + break; + } -exec("mkdir -p /tmp/plugins"); -@unlink("/tmp/plugins/$plugin"); -$url = @plugin("pluginURL","/boot/config/plugins/$plugin"); -download_url($url,"/tmp/plugins/$plugin"); + exec("mkdir -p /tmp/plugins"); + @unlink("/tmp/plugins/$plugin"); + $url = @plugin("pluginURL","/boot/config/plugins/$plugin"); + download_url($url,"/tmp/plugins/$plugin"); -$changes = @plugin("changes","/tmp/plugins/$plugin"); -$version = @plugin("version","/tmp/plugins/$plugin"); -$installedVersion = @plugin("version","/boot/config/plugins/$plugin"); -$min = @plugin("min","/tmp/plugins/$plugin") ?: "6.4.0"; -if ( $changes ) { - file_put_contents("/tmp/plugins/".pathinfo($plugin, PATHINFO_FILENAME).".txt",$changes); -} else { - @unlink("/tmp/plugins/".pathinfo($plugin, PATHINFO_FILENAME).".txt"); -} + $changes = @plugin("changes","/tmp/plugins/$plugin"); + $version = @plugin("version","/tmp/plugins/$plugin"); + $installedVersion = @plugin("version","/boot/config/plugins/$plugin"); + $min = @plugin("min","/tmp/plugins/$plugin") ?: "6.4.0"; + if ( $changes ) { + file_put_contents("/tmp/plugins/".pathinfo($plugin, PATHINFO_FILENAME).".txt",$changes); + } else { + @unlink("/tmp/plugins/".pathinfo($plugin, PATHINFO_FILENAME).".txt"); + } -$update = false; -if ( strcmp($version,$installedVersion) > 0 ) { - $unraid = parse_ini_file("/etc/unraid-version"); - $update = (version_compare($min,$unraid['version'],">")) ? false : true; -} + $update = false; + if ( strcmp($version,$installedVersion) > 0 ) { + $unraid = parse_ini_file("/etc/unraid-version"); + $update = (version_compare($min,$unraid['version'],">")) ? false : true; + } -echo json_encode(array("updateAvailable" => $update,"version" => $version,"min"=>$min,"changes"=>$changes,"installedVersion"=>$installedVersion)); - -?> + echo json_encode(array("updateAvailable" => $update,"version" => $version,"min"=>$min,"changes"=>$changes,"installedVersion"=>$installedVersion)); + break; + + case 'addRebootNotice': + $message = htmlspecialchars(trim($_POST['message'])); + if (!$message) break; + + $existing = @file("/tmp/reboot_notifications",FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES) ?: array(); + $existing[] = $message; + + file_put_contents("/tmp/reboot_notifications",implode("\n",array_unique($existing))); + break; + + case 'removeRebootNotice': + $message = htmlspecialchars(trim($_POST['message'])); + $existing = file_get_contents("/tmp/reboot_notifications"); + $newReboots = str_replace($message,"",$existing); + file_put_contents("/tmp/reboot_notifications",$newReboots); + break; +} +?> \ No newline at end of file diff --git a/plugins/dynamix.vm.manager/VMSettings.page b/plugins/dynamix.vm.manager/VMSettings.page index 3d4233f8e..85d972588 100644 --- a/plugins/dynamix.vm.manager/VMSettings.page +++ b/plugins/dynamix.vm.manager/VMSettings.page @@ -235,8 +235,6 @@ VFIO allow unsafe interrupts: : -
- > View the log for libvirt: /var/log/libvirt/libvirtd.log @@ -451,7 +449,8 @@ $(function(){ }); } $.post("/plugins/dynamix.vm.manager/include/VMajax.php", {action:'reboot'}, function(data){ - if (data.modified) $('div.notice.reboot').show(); else $('div.notice.reboot').hide(); + var rebootMessage = "VM Settings: A reboot is required to apply changes"; + if (data.modified) addRebootNotice(rebootMessage); else removeRebootNotice(rebootMessage); }); }); diff --git a/plugins/dynamix/CPUisol.page b/plugins/dynamix/CPUisol.page index c2825377a..eb2a8022d 100644 --- a/plugins/dynamix/CPUisol.page +++ b/plugins/dynamix/CPUisol.page @@ -3,8 +3,8 @@ Title="CPU Isolation" Tag="icon-cpu" --- -