Slackbot
01/19/2024, 8:55 PMJon Bucud
01/19/2024, 9:53 PMJon Bucud
01/19/2024, 9:56 PMRay Davis
01/20/2024, 12:27 AMJon Bucud
01/20/2024, 12:32 AMfunction Show-Menu {
Clear-Host
Write-Host "1. Export STF Config"
Write-Host "2. Export Subscription Data"
Write-Host "3. Import STF Config"
Write-Host "4. Import Subscription Data"
Write-Host "5. Exit"
}
function Export-STFConfig {
param(
[string]$targetFolder = (Read-Host "Enter target folder (default: $env:userprofile\desktop\)"),
[string]$zipFileName = (Read-Host "Enter zip filename (default: CTXSFbackup)")
)
if ($targetFolder -eq "") { $targetFolder = "$env:userprofile\desktop\" }
if ($zipFileName -eq "") { $zipFileName = "CTXSFbackup" }
$dateTimeStamp = Get-Date -Format "yyyyMMdd_HHmm"
$fullZipFileName = "${zipFileName}_${dateTimeStamp}.zip"
Export-STFConfiguration -targetFolder $targetFolder -zipFileName $fullZipFileName -NoEncryption
}
function Export-SubscriptionData {
param(
[string]$storeName = (Read-Host "Enter Store Name, Example: <http://storefront.domain.com/Citrix/STORENAME%22|storefront.domain.com/Citrix/STORENAME">),
[string]$subsExportLocation = (Read-Host "Enter subscription export location (default: $env:userprofile\desktop\)")
)
if ($subsExportLocation -eq "") { $subsExportLocation = "$env:userprofile\desktop\" }
$dateTimeStamp = Get-Date -Format "yyyyMMdd_HHmm"
$fullSubsFileName = "Subscriptions_${dateTimeStamp}.txt"
$StoreObject = Get-STFStoreService -SiteID 1 -VirtualPath "/citrix/$storeName"
Export-STFStoreSubscriptions -StoreService $StoreObject -FilePath (Join-Path $subsExportLocation $fullSubsFileName)
}
function Import-STFConfig {
param(
[string]$importLocation = (Read-Host "Enter import location for configuration")
)
$eligibleFiles = Get-ChildItem -Path $importLocation -Filter *.zip
if ($eligibleFiles.Count -eq 0) {
Write-Host "No eligible files found in the specified directory."
return
}
Write-Host "Eligible files in $importLocation"
$eligibleFiles | ForEach-Object { Write-Host $_.Name }
$selectedFile = Read-Host "Select a file to import"
# Add your Import-STFConfiguration command here using $selectedFile
}
function Import-SubscriptionData {
param(
[string]$importLocation = (Read-Host "Enter import location for subscription data"),
[string]$storeName = (Read-Host "Enter Store Name, Example: <http://storefront.domain.com/Citrix/STORENAME%22|storefront.domain.com/Citrix/STORENAME">)
)
$eligibleFiles = Get-ChildItem -Path $importLocation -Filter *.txt
if ($eligibleFiles.Count -eq 0) {
Write-Host "No eligible text files found in the specified directory."
return
}
Write-Host "Eligible text files in $importLocation"
$eligibleFiles | ForEach-Object { Write-Host $_.Name }
$selectedFile = Read-Host "Select a text file to import"
$StoreObject = Get-STFStoreService -SiteID 1 -VirtualPath "/citrix/$storeName"
Import-STFStoreSubscriptions -StoreService $StoreObject -FilePath (Join-Path $importLocation $selectedFile)
}
do {
Show-Menu
$choice = Read-Host "Enter your choice (1-5)"
switch ($choice) {
1 { Export-STFConfig }
2 { Export-SubscriptionData }
3 { Import-STFConfig }
4 { Import-SubscriptionData }
5 { break }
default { Write-Host "Invalid choice. Please enter a number from 1 to 5." }
}
pause
} while ($choice -ne 5)Matt Nation
01/20/2024, 12:34 AMJon Bucud
01/20/2024, 12:35 AMMatt Nation
01/20/2024, 12:37 AMRay Davis
01/20/2024, 12:37 AMMatt Nation
01/20/2024, 12:38 AMJon Bucud
01/20/2024, 12:38 AMJon Bucud
01/20/2024, 12:39 AMMatt Nation
01/20/2024, 12:39 AMMatt Nation
01/20/2024, 12:39 AMRay Davis
01/20/2024, 12:40 AMMatt Nation
01/20/2024, 12:41 AMMatt Nation
01/20/2024, 12:44 AMRay Davis
01/20/2024, 12:44 AMShane Kleinert
01/20/2024, 12:45 AMShane Kleinert
01/20/2024, 12:46 AMShane Kleinert
01/20/2024, 12:46 AMMatt Nation
01/20/2024, 12:47 AMMatt Nation
01/20/2024, 12:47 AMShane Kleinert
01/20/2024, 12:48 AMJames Kindon
01/20/2024, 1:06 AMRay Davis
01/20/2024, 1:08 AM