Update StackMonkey.ps1
This commit is contained in:
181
StackMonkey.ps1
181
StackMonkey.ps1
@@ -1015,6 +1015,7 @@ $style = @'
|
|||||||
</style>
|
</style>
|
||||||
'@
|
'@
|
||||||
|
|
||||||
|
|
||||||
$script = @'
|
$script = @'
|
||||||
<script>
|
<script>
|
||||||
// =======================================================================
|
// =======================================================================
|
||||||
@@ -1272,106 +1273,106 @@ fetch('/quit', { method: 'GET', keepalive: true });
|
|||||||
|
|
||||||
#
|
#
|
||||||
# 3) The HTML skeleton with placeholders
|
# 3) The HTML skeleton with placeholders
|
||||||
#
|
#
|
||||||
$htmlTemplate = @"
|
$htmlTemplate = @"
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta name="viewport" content="width=device-width,initial-scale=1.0">
|
<meta name="viewport" content="width=device-width,initial-scale=1.0">
|
||||||
<title>Script Monkey</title>
|
<title>Script Monkey</title>
|
||||||
<link rel="icon" href="https://git.svstools.com/syelle/Logo/raw/branch/main/SVS_Favicon.ico">
|
<link rel="icon" href="https://git.svstools.com/syelle/Logo/raw/branch/main/SVS_Favicon.ico">
|
||||||
$style
|
$style
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div class="logo-container">
|
<div class="logo-container">
|
||||||
<div class="logo-left">
|
<div class="logo-left">
|
||||||
<img src="https://git.svstools.com/syelle/Logo/raw/branch/main/SVS_logo.svg" alt="SVS Logo">
|
<img src="https://git.svstools.com/syelle/Logo/raw/branch/main/SVS_logo.svg" alt="SVS Logo">
|
||||||
{{moduleVersion}}
|
{{moduleVersion}}
|
||||||
</div>
|
|
||||||
<div id="tagline"></div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="container">
|
|
||||||
<div class="sidebar">
|
|
||||||
<button class="tab-button" data-tab="onboardTab">On-Boarding</button>
|
|
||||||
<button class="tab-button" data-tab="offboardTab">Off-Boarding</button>
|
|
||||||
<button class="tab-button" data-tab="tweaksTab">Tweaks</button>
|
|
||||||
<button class="tab-button" data-tab="SVSAppsTab">SVS APPs</button>
|
|
||||||
</div>
|
|
||||||
<div class="content">
|
|
||||||
<div id="onboardTab" class="tab-content">
|
|
||||||
<h2>On-Boarding</h2>
|
|
||||||
<h3 class="subtitle">This new deployment method ensures everything is successfully deployed with greater ease!</h3>
|
|
||||||
|
|
||||||
<!-- 1) Dynamic task checkboxes -->
|
|
||||||
<div class="columns-container">
|
|
||||||
<div class="checkbox-group column">
|
|
||||||
<h3>SVSMSP Stack</h3>
|
|
||||||
<label><input type="checkbox" id="selectAllLeftCheckbox" onclick="toggleColumn('left')"> Select All</label>
|
|
||||||
{{onboardLeftColumn}}
|
|
||||||
</div>
|
|
||||||
<div class="checkbox-group column">
|
|
||||||
<h3>Optional</h3>
|
|
||||||
<label><input type="checkbox" id="selectAllRightCheckbox" onclick="toggleColumn('right')"> Select All</label>
|
|
||||||
{{onboardRightColumn}}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- 2) Password and Datto Site dropdown shown conditionally -->
|
|
||||||
<div id="PasswordContainer" style="display:none; margin-bottom:1em;">
|
|
||||||
<label for="Password">Enter Password:</label>
|
|
||||||
<div style="display:flex; gap:5px;">
|
|
||||||
<input type="password" id="Password" placeholder="Enter Password" style="flex:1;" />
|
|
||||||
|
|
||||||
<button onclick="fetchSites()" style="padding:4px 10px; background-color: var(--btn-sidebar-blue); color: var(--white-color); border: none; border-radius: 4px;">GO!</button>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="dattoRmmContainer" style="display:none; margin-bottom:1em;">
|
|
||||||
<label for="dattoDropdown">Select a Datto RMM site:</label>
|
|
||||||
<select id="dattoDropdown" style="width:100%;">
|
|
||||||
<option disabled selected>Fetching sites...</option>
|
|
||||||
</select>
|
|
||||||
</div>
|
</div>
|
||||||
|
<div id="tagline"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="container">
|
||||||
|
<div class="sidebar">
|
||||||
|
<button class="tab-button" data-tab="onboardTab">On-Boarding</button>
|
||||||
|
<button class="tab-button" data-tab="offboardTab">Off-Boarding</button>
|
||||||
|
<button class="tab-button" data-tab="tweaksTab">Tweaks</button>
|
||||||
|
<button class="tab-button" data-tab="SVSAppsTab">SVS APPs</button>
|
||||||
|
</div>
|
||||||
|
<div class="content">
|
||||||
|
<div id="onboardTab" class="tab-content">
|
||||||
|
<h2>On-Boarding</h2>
|
||||||
|
<h3 class="subtitle">This new deployment method ensures everything is successfully deployed with greater ease!</h3>
|
||||||
|
|
||||||
<div id="offboardTab" class="tab-content">
|
<!-- 1) Dynamic task checkboxes -->
|
||||||
<h2>Off-Boarding</h2>
|
<div class="columns-container">
|
||||||
<div class="columns-container">
|
<div class="checkbox-group column">
|
||||||
{{offboardCheckboxes}}
|
<h3>SVSMSP Stack</h3>
|
||||||
|
<label><input type="checkbox" id="selectAllLeftCheckbox" onclick="toggleColumn('left')"> Select All</label>
|
||||||
|
{{onboardLeftColumn}}
|
||||||
|
</div>
|
||||||
|
<div class="checkbox-group column">
|
||||||
|
<h3>Optional</h3>
|
||||||
|
<label><input type="checkbox" id="selectAllRightCheckbox" onclick="toggleColumn('right')"> Select All</label>
|
||||||
|
{{onboardRightColumn}}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div id="tweaksTab" class="tab-content">
|
|
||||||
<h2>Tweaks</h2>
|
|
||||||
<div class="columns-container">
|
|
||||||
{{tweaksCheckboxes}}
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<div id="SVSAppsTab" class="tab-content">
|
|
||||||
<h2>SVS APPs</h2>
|
<!-- 2) Password and Datto Site dropdown shown conditionally -->
|
||||||
<div class="columns-container">
|
<div id="PasswordContainer" style="display:none; margin-bottom:1em;">
|
||||||
{{appsCheckboxes}}
|
<label for="Password">Enter Password:</label>
|
||||||
</div>
|
<div style="display:flex; gap:5px;">
|
||||||
|
<input type="password" id="Password" placeholder="Enter Password" style="flex:1;" />
|
||||||
|
|
||||||
|
<button onclick="fetchSites()" style="padding:4px 10px; background-color: var(--btn-sidebar-blue); color: var(--white-color); border: none; border-radius: 4px;">GO!</button>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
$script
|
|
||||||
<!-- floating button group -->
|
|
||||||
<div class="fixed-buttons">
|
|
||||||
<button class="exit-button" onclick="endSession()">Exit</button>
|
|
||||||
<button class="run-button" onclick="triggerInstall()">Run Selected</button>
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
|
|
||||||
"@
|
<div id="dattoRmmContainer" style="display:none; margin-bottom:1em;">
|
||||||
|
<label for="dattoDropdown">Select a Datto RMM site:</label>
|
||||||
|
<select id="dattoDropdown" style="width:100%;">
|
||||||
|
<option disabled selected>Fetching sites...</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div id="offboardTab" class="tab-content">
|
||||||
|
<h2>Off-Boarding</h2>
|
||||||
|
<div class="columns-container">
|
||||||
|
{{offboardCheckboxes}}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div id="tweaksTab" class="tab-content">
|
||||||
|
<h2>Tweaks</h2>
|
||||||
|
<div class="columns-container">
|
||||||
|
{{tweaksCheckboxes}}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div id="SVSAppsTab" class="tab-content">
|
||||||
|
<h2>SVS APPs</h2>
|
||||||
|
<div class="columns-container">
|
||||||
|
{{appsCheckboxes}}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
$script
|
||||||
|
<!-- floating button group -->
|
||||||
|
<div class="fixed-buttons">
|
||||||
|
<button class="exit-button" onclick="endSession()">Exit</button>
|
||||||
|
<button class="run-button" onclick="triggerInstall()">Run Selected</button>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
|
"@
|
||||||
|
|
||||||
#
|
#
|
||||||
# 4) Build the checkbox HTML and tasks JS from $Global:Tasks
|
# 4) Build the checkbox HTML and tasks JS from $Global:Tasks
|
||||||
|
|||||||
Reference in New Issue
Block a user