Add new fields and pax8 integration

This commit is contained in:
Chris Payne
2025-07-08 20:33:22 -04:00
parent c13b764d13
commit e5c5b80476
3 changed files with 190 additions and 20 deletions

View File

@@ -17,6 +17,7 @@ Write-Host "[INFO] MSAL.PS module loaded."
$urls = @{
autotask = "https://git.svstools.com/cpayne/InstaClientPS/raw/branch/main/tools/autotask.ps1"
datto = "https://git.svstools.com/cpayne/InstaClientPS/raw/branch/main/tools/dattormm.ps1"
pax8 = "https://git.svstools.com/cpayne/InstaClientPS/raw/branch/main/tools/pax8.ps1"
config = "https://git.svstools.com/cpayne/InstaClientPS/raw/branch/main/config.ps1"
}
@@ -59,21 +60,34 @@ Add-Type -AssemblyName WindowsBase
Add-Type -AssemblyName System.Xaml
# Map named UI controls
$CompanyNameBox = $window.FindName("CompanyNameBox")
$PhoneBox = $window.FindName("PhoneBox")
$SelectAllBox = $window.FindName("SelectAllBox")
$AutotaskBox = $window.FindName("AutotaskBox")
$DattoBox = $window.FindName("DattoBox")
$BackupBox = $window.FindName("BackupBox")
$ITGlueBox = $window.FindName("ITGlueBox")
$RocketcyberBox = $window.FindName("RocketcyberBox")
$CyberQPBox = $window.FindName("CyberQPBox")
$Pax8Box = $window.FindName("Pax8Box")
$LoginBtn = $window.FindName("LoginBtn")
$SubmitBtn = $window.FindName("SubmitBtn")
$StatusBlock = $window.FindName("StatusBlock")
$phoneLabel = $window.FindName("PhoneLabel")
$companyLabel = $window.FindName("CompanyLabel")
$CompanyNameBox = $window.FindName("CompanyNameBox")
$PhoneBox = $window.FindName("PhoneBox")
$SelectAllBox = $window.FindName("SelectAllBox")
$AutotaskBox = $window.FindName("AutotaskBox")
$DattoBox = $window.FindName("DattoBox")
$BackupBox = $window.FindName("BackupBox")
$ITGlueBox = $window.FindName("ITGlueBox")
$RocketcyberBox = $window.FindName("RocketcyberBox")
$CyberQPBox = $window.FindName("CyberQPBox")
$Pax8Box = $window.FindName("Pax8Box")
$LoginBtn = $window.FindName("LoginBtn")
$SubmitBtn = $window.FindName("SubmitBtn")
$StatusBlock = $window.FindName("StatusBlock")
$phoneLabel = $window.FindName("PhoneLabel")
$companyLabel = $window.FindName("CompanyLabel")
$websiteBox = $window.FindName("WebsiteBox")
$streetBox = $window.FindName("StreetBox")
$cityBox = $window.FindName("CityBox")
$provinceBox = $window.FindName("ProvinceBox")
$postalCodeBox = $window.FindName("PostalCodeBox")
$countryBox = $window.FindName("CountyBox")
$websiteLabel = $window.FindName("WebsiteLabel")
$streetLabel = $window.FindName("StreetLabel")
$cityLabel = $window.FindName("CityLabel")
$provinceLabel = $window.FindName("ProvinceLabel")
$postalCodeLabel = $window.FindName("PostalCodeLabel")
$countryLabel = $window.FindName("CountyLabel")
$PhoneBox.Visibility = 'Collapsed'
$phoneLabel.Visibility = 'Collapsed'
@@ -88,22 +102,68 @@ $Pax8Box.Visibility = 'Collapsed'
$SelectAllBox.Visibility = 'Collapsed'
$CompanyNameBox.Visibility = 'Collapsed'
$companyLabel.Visibility = 'Collapsed'
$websiteBox.Visibility = 'Collapsed'
$websiteLabel.Visibility = 'Collapsed'
$streetBox.Visibility = 'Collapsed'
$streetLabel.Visibility = 'Collapsed'
$cityBox.Visibility = 'Collapsed'
$cityLabel.Visibility = 'Collapsed'
$provinceBox.Visibility = 'Collapsed'
$provinceLabel.Visibility = 'Collapsed'
$postalCodeBox.Visibility = 'Collapsed'
$postalCodeLabel.Visibility = 'Collapsed'
$countryBox.Visibility = 'Collapsed'
$countryLabel.Visibility = 'Collapsed'
$BackupBox.IsEnabled = $false
$ITGlueBox.IsEnabled = $false
$RocketcyberBox.IsEnabled = $false
$CyberQPBox.IsEnabled = $false
$Pax8Box.IsEnabled = $false
$AutotaskBox.Add_Checked({
$PhoneBox.Visibility = 'Visible'
$phoneLabel.Visibility = 'Visible'
})
$AutotaskBox.Add_Unchecked({
$PhoneBox.Visibility = 'Collapsed'
$phoneLabel.Visibility = 'Collapsed'
})
$Pax8Box.Add_Checked({
$PhoneBox.Visibility = 'Visible'
$phoneLabel.Visibility = 'Visible'
$websiteBox.Visibility = 'Visible'
$websiteLabel.Visibility = 'Visible'
$streetBox.Visibility = 'Visible'
$streetLabel.Visibility = 'Visible'
$cityBox.Visibility = 'Visible'
$cityLabel.Visibility = 'Visible'
$provinceBox.Visibility = 'Visible'
$provinceLabel.Visibility = 'Visible'
$postalCodeBox.Visibility = 'Visible'
$postalCodeLabel.Visibility = 'Visible'
$countryBox.Visibility = 'Visible'
$countryLabel.Visibility = 'Visible'
})
$Pax8Box.Add_Unchecked({
$PhoneBox.Visibility = 'Collapsed'
$phoneLabel.Visibility = 'Collapsed'
$websiteBox.Visibility = 'Collapsed'
$websiteLabel.Visibility = 'Collapsed'
$streetBox.Visibility = 'Collapsed'
$streetLabel.Visibility = 'Collapsed'
$cityBox.Visibility = 'Collapsed'
$cityLabel.Visibility = 'Collapsed'
$provinceBox.Visibility = 'Collapsed'
$provinceLabel.Visibility = 'Collapsed'
$postalCodeBox.Visibility = 'Collapsed'
$postalCodeLabel.Visibility = 'Collapsed'
$countryBox.Visibility = 'Collapsed'
$countryLabel.Visibility = 'Collapsed'
})
Write-Host "[INFO] UI control references assigned."
# Global tool credentials
@@ -223,6 +283,11 @@ $SubmitBtn.Add_Click({
Invoke-DattoProvision -CompanyName $company -Credentials $script:toolCredentials
}
if ($Pax8Box.IsChecked) {
Write-Host "[INFO] Provisioning Pax8..."
Invoke-Pax8Provision -CompanyName $company -Phone $phone -Website $WebsiteBox.Text.Trim() -Street $StreetBox.Text.Trim() -City $CityBox.Text.Trim() -Province $ProvinceBox.Text.Trim() -PostalCode $PostalCodeBox.Text.Trim() -Country $CountryBox.Text.Trim() -Credentials $script:toolCredentials
}
$StatusBlock.Text = "Provisioning completed successfully."
Write-Host "[SUCCESS] Provisioning complete."
$CompanyNameBox.Text = ""