Update TGBeta.ps1
This commit is contained in:
106
TGBeta.ps1
106
TGBeta.ps1
@@ -620,7 +620,7 @@ function GetHtmlContent {
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" name="enableDarkMode" id="enableDarkModeCheckbox">
|
||||
Enable Dark Mode
|
||||
Set Edge Default Search Engine
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" name="disableAnimations" id="disableAnimationsCheckbox">
|
||||
@@ -912,6 +912,42 @@ function GetHtmlContent {
|
||||
|
||||
});
|
||||
|
||||
async function runSelectedTweaks() {
|
||||
const tweaks = [];
|
||||
const tweakCheckboxes = document.querySelectorAll('#tweaksTab input[type="checkbox"]:not(#selectAllTweaksCheckbox)');
|
||||
|
||||
tweakCheckboxes.forEach((checkbox) => {
|
||||
if (checkbox.checked) {
|
||||
tweaks.push(checkbox.id); // Use the checkbox IDs as tweak identifiers
|
||||
}
|
||||
});
|
||||
|
||||
if (tweaks.length === 0) {
|
||||
appendLog("No tweaks selected. Please select at least one tweak to run.", "red");
|
||||
return;
|
||||
}
|
||||
|
||||
appendLog("Running selected tweaks...", "yellow");
|
||||
|
||||
try {
|
||||
const response = await fetch('/runTweaks', {
|
||||
method: 'POST',
|
||||
headers: { 'Content-Type': 'application/json' },
|
||||
body: JSON.stringify({ tweaks }),
|
||||
});
|
||||
|
||||
if (!response.ok) {
|
||||
throw new Error('Failed to run selected tweaks. Please try again.');
|
||||
}
|
||||
|
||||
const result = await response.text();
|
||||
appendLog(result, "green");
|
||||
} catch (error) {
|
||||
appendLog(`Error: ${error.message}`, "red");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function appendLog(message, color = "white") {
|
||||
const log = document.createElement('p');
|
||||
log.style.color = color;
|
||||
@@ -1248,6 +1284,74 @@ try {
|
||||
$response.OutputStream.Close()
|
||||
}
|
||||
|
||||
"/runTweaks" {
|
||||
if ($request.HttpMethod -eq "POST") {
|
||||
try {
|
||||
# Step 1: Read the Request Body
|
||||
$bodyStream = New-Object IO.StreamReader $request.InputStream
|
||||
$body = $bodyStream.ReadToEnd()
|
||||
$requestData = ConvertFrom-Json $body
|
||||
|
||||
# Step 2: Validate Input
|
||||
$tweaks = $requestData.tweaks
|
||||
if (-not $tweaks -or $tweaks.Count -eq 0) {
|
||||
$response.StatusCode = 400
|
||||
$responseString = "Error: No tweaks selected."
|
||||
$buffer = [System.Text.Encoding]::UTF8.GetBytes($responseString)
|
||||
$response.OutputStream.Write($buffer, 0, $buffer.Length)
|
||||
$response.OutputStream.Close()
|
||||
return
|
||||
}
|
||||
|
||||
# Step 3: Run Selected Tweaks
|
||||
foreach ($tweak in $tweaks) {
|
||||
switch ($tweak) {
|
||||
"enableDarkModeCheckbox" {
|
||||
Write-LogHybrid -Message "Running tweak: Set Edge Default Search Engine" -Level "Info"
|
||||
Set-EdgeDefaultSearchEngine
|
||||
}
|
||||
"disableAnimationsCheckbox" {
|
||||
Write-LogHybrid -Message "Running tweak: Disable Animations" -Level "Info"
|
||||
#Disable-Animations
|
||||
}
|
||||
"optimizePerformanceCheckbox" {
|
||||
Write-LogHybrid -Message "Running tweak: Optimize Performance" -Level "Info"
|
||||
#Optimize-Performance
|
||||
}
|
||||
"increaseFontSizeCheckbox" {
|
||||
Write-LogHybrid -Message "Running tweak: Increase Font Size" -Level "Info"
|
||||
#Increase-FontSize
|
||||
}
|
||||
default {
|
||||
Write-LogHybrid -Message "Unknown tweak: $tweak" -Level "Warning"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# Step 4: Return Success Response
|
||||
$responseString = "Selected tweaks executed successfully."
|
||||
$response.StatusCode = 200
|
||||
} catch {
|
||||
$responseString = "Error processing tweaks: $($_.Exception.Message)"
|
||||
$response.StatusCode = 500
|
||||
}
|
||||
|
||||
# Send the Response
|
||||
$buffer = [System.Text.Encoding]::UTF8.GetBytes($responseString)
|
||||
$response.ContentType = "text/plain"
|
||||
$response.ContentLength64 = $buffer.Length
|
||||
$response.OutputStream.Write($buffer, 0, $buffer.Length)
|
||||
$response.OutputStream.Close()
|
||||
} else {
|
||||
$responseString = "Method not allowed. Use POST."
|
||||
$response.StatusCode = 405
|
||||
$buffer = [System.Text.Encoding]::UTF8.GetBytes($responseString)
|
||||
$response.OutputStream.Write($buffer, 0, $buffer.Length)
|
||||
$response.OutputStream.Close()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# ----------------------------------------------------------------
|
||||
# 4) NEW ROUTE: /getLogs
|
||||
# Returns $Global:LogCache as JSON for the polling function
|
||||
|
||||
Reference in New Issue
Block a user