-
Notifications
You must be signed in to change notification settings - Fork 0
/
VWM.ps1
448 lines (311 loc) · 74 KB
/
VWM.ps1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
$script_path = $MyInvocation.MyCommand.Path
$script_dir = Split-Path -Parent $script_path
$cfgfile = $script_dir + "\config.json"
$GUIFile = $script_dir + "\GUI\MainWindow.xaml"
$ressource_path = $script_dir + "\GUI\ressources"
$userID = 'mathias'
IF ($userID -eq "") { $userID = $env:username }
#region Import the Assemblies
Add-Type -AssemblyName presentationframework, presentationcore, System.Drawing, System.Windows.Forms, WindowsFormsIntegration
[reflection.assembly]::loadwithpartialname("System.Windows.Forms") | Out-Null
[reflection.assembly]::loadwithpartialname("System.Drawing") | Out-Null
Add-Type -Name Window -Namespace Console -MemberDefinition '
[DllImport("Kernel32.dll")]
public static extern IntPtr GetConsoleWindow();
[DllImport("user32.dll")]
public static extern bool ShowWindow(IntPtr hWnd, Int32 nCmdShow);
'
#endregion
$procIcon = "$ressource_path\vwm0.ico"
$okIcon = "$ressource_path\vwm1.ico"
$warnIcon = "$ressource_path\vwm2.ico"
$RedIcon = "$ressource_path\vwm3.ico"
$InfoIcon = "$ressource_path\vwm4.ico"
$ArrowIcon = "$ressource_path\vwm5.ico"
#load GUI from XAML File
$wpf = @{ }
$inputXML = Get-Content -Path "$GUIFile"
$inputXMLClean = $inputXML -replace 'mc:Ignorable="d"', '' -replace "x:N", 'N' -replace 'x:Class=".*?"', '' -replace 'd:DesignHeight="\d*?"', '' -replace 'd:DesignWidth="\d*?"', ''
[xml]$xaml = $inputXMLClean
$reader = New-Object System.Xml.XmlNodeReader $xaml
$tempform = [Windows.Markup.XamlReader]::Load($reader)
$namedNodes = $xaml.SelectNodes("//*[@*[contains(translate(name(.),'n','N'),'Name')]]")
$namedNodes | ForEach-Object { $wpf.Add($_.Name, $tempform.FindName($_.Name)) }
#region base64 string
# here's the base64 string of the image for TaskIcon and the VWM icon in the GUI (TOP left corner)
$base64 = "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"
#endregion
# Create a streaming image by streaming the base64 string to a bitmap streamsource
$bitmap = New-Object System.Windows.Media.Imaging.BitmapImage
$bitmap.BeginInit()
$bitmap.StreamSource = [System.IO.MemoryStream][System.Convert]::FromBase64String($base64)
$bitmap.EndInit()
$bitmap.Freeze()
# This is the icon in the upper left hand corner of the app
$wpf.VWM.Icon = $bitmap
# This is the toolbar icon and description
$wpf.VWM.TaskbarItemInfo.Overlay = $bitmap
function Show-Console {
$consolePtr = [Console.Window]::GetConsoleWindow()
[Console.Window]::ShowWindow($consolePtr, 5)
}
function Hide-Console {
$consolePtr = [Console.Window]::GetConsoleWindow()
[Console.Window]::ShowWindow($consolePtr, 0)
}
function Submit-VWMRequest {
param(
[Parameter(Mandatory = $true)]
[string]$Action,
[Parameter(Mandatory = $true)]
[string]$PreFix,
[Parameter(Mandatory = $true)]
[string]$DTAP,
[Parameter(Mandatory = $true)]
[string]$Model,
[Parameter(Mandatory = $false)]
[string]$PubName
)
$timestamp = Get-Date -Format yyyyMMdd-HHmmss
$outfile = $reqPath + "\" + $userID + "_" + $timestamp + ".json"
$cudate = Get-Date -Format dd.MM.yyyy
$cutime = Get-Date -Format HH:mm:ss
(New-Object PSObject -Property @{
Date = "$cudate"
Time = "$cutime"
Action = "$Action"
User = "$env:username"
PreFix = "$PreFix"
ENV = "$DTAP"
Model = "$Model"
PubName = "$PubName"
}) | ConvertTo-Json -Depth 10 | Out-File -FilePath $outfile
}
# Hide Powershell Console and show Gui only
#Jim - did not hide console to debug
#Hide-Console
#read config file
#Jim maybe better format for this command
$cfg = Get-Content $cfgfile | Convertfrom-Json
#set global Values
$RefreshTime = $cfg.Global.AutoRefreshTime
$reqPath = "\\" + $($cfg.Global.Server) + "\" + $($cfg.Global.Path) + "\" + $($cfg.Global.req)
$procPath = "\\" + $($cfg.Global.Server) + "\" + $($cfg.Global.Path) + "\" + $($cfg.Global.proc)
#set VD Values
$cfgVDPrefix = $cfg.VD.PreFix
$cfgVDDGroup = $cfg.VD.Dgroup
$cfgVDTGroup = $cfg.VD.Tgroup
$cfgVDAGroup = $cfg.VD.Agroup
$cfgVDPGroup = $cfg.VD.Pgroup
$cfgVDDmodel = $cfg.VD.Dmodel
$cfgVDTmodel = $cfg.VD.Tmodel
$cfgVDAmodel = $cfg.VD.Amodel
$cfgVDPmodel = $cfg.VD.Pmodel
$cfgVDadminGroup = $cfg.VD.admin
$cfgVDDpubName = $cfg.VD.DpubName
#set VA Values
$cfgVAPrefix = $cfg.VA.PreFix
$cfgVADGroup = $cfg.VA.Dgroup
$cfgVATGroup = $cfg.VA.Tgroup
$cfgVAAGroup = $cfg.VA.Agroup
$cfgVAPGroup = $cfg.VA.Pgroup
$cfgVADmodel = $cfg.VA.Dmodel
$cfgVATmodel = $cfg.VA.Tmodel
$cfgVAAmodel = $cfg.VA.Amodel
$cfgVAPmodel = $cfg.VA.Pmodel
$cfgVAadminGroup = $cfg.VA.Admin
$KerberosTicket = ([System.Security.Principal.WindowsIdentity]::GetCurrent().Groups)
# Translate SIDs from the KerberosTicket to names like "DACHSER-DS\AP-Group"
$KerberosTicketGroups = ($KerberosTicket.Translate([System.Security.Principal.NTAccount]))
# Search in KerberosTicketGroups for the Develop-Group group from user and remove the Domainame\ from the group
#Show VD (P)roduction Environment based on Group membership
try {
$uPGroup = ($KerberosTicketGroups | Where-Object Value -like "$env:USERDOMAIN\$cfgVDPGroup").Value.Replace("$env:USERDOMAIN\", "")
}
catch {
Write-Host "User $env:username is not a member of group $cfgVDPGroup"
}
finally {
Write-Host "Tab (P)roduction Environment not available at the moment !"
#IF ($uPGroup -eq $cfgVDPGroup) {$wpf.TI1P.isEnabled = $true} ELSE {$wpf.TI1P.isEnabled = $false}
}
#Show VD (A)cceptance Environment based on Group membership
try {
$uAGroup = ($KerberosTicketGroups | Where-Object Value -like "$env:USERDOMAIN\$cfgVDAGroup").Value.Replace("$env:USERDOMAIN\", "")
}
catch {
Write-Host "User $env:username is not a member of group $cfgVDAGroup"
}
finally {
Write-Host "Tab (A)cceptance Environment not available at the moment !"
#IF ($uAGroup -eq $cfgVDAGroup) {$wpf.TI1A.isEnabled = $true} ELSE {$wpf.TI1A.isEnabled = $false}
}
#Show VD (T)est Environment based on Group membership
try {
$uTGroup = ($KerberosTicketGroups | Where-Object Value -like "$env:USERDOMAIN\$($cfgVDTGroup)").Value.Replace("$env:USERDOMAIN\", "")
}
catch {
Write-Host "User $env:username is not a member of group $cfgVDTGroup"
}
finally {
IF ($uTGroup -eq $cfgVDTGroup) { $wpf.TI1T.isEnabled = $true } ELSE { $wpf.TI1T.isEnabled = $false }
}
#Show VD (D)evlop Environment based on Group membership
try {
$uDGroup = ($KerberosTicketGroups | Where-Object Value -like "$env:USERDOMAIN\$cfgVDDGroup").Value.Replace("$env:USERDOMAIN\", "")
}
catch {
Write-Host "User $env:username is not a member of group $cfgVDDGroup"
}
finally {
IF ($uDGroup -eq $cfgVDDGroup) { $wpf.TI1D.isEnabled = $true } ELSE { $wpf.TI1D.isEnabled = $false }
}
#Show VD-Admin based on Group membership
try {
$uVDAdminGroup = ($KerberosTicketGroups | Where-Object Value -like "$env:USERDOMAIN\$cfgVDadminGroup").Value.Replace("$env:USERDOMAIN\", "")
}
catch {
Write-Host "User $env:username is not a member of group $cfgVDadminGroup"
}
finally {
IF ($uVDAdminGroup -eq $cfgVDadminGroup) { $wpf.TI1VDADM.Visibility = "Visible" } ELSE { $wpf.TI1VDADM.Visibility = "Hidden" }
}
#Show VA-Admin based on Group membership
try {
$uVAAdminGroup = ($KerberosTicketGroups | Where-Object Value -like "$env:USERDOMAIN\$cfgVAadminGroup").Value.Replace("$env:USERDOMAIN\", "")
}
catch {
Write-Host "User $env:username is not a member of group $cfgVAadminGroup"
}
finally {
IF ($uVAAdminGroup -eq $cfgVAadminGroup) { $wpf.TI1VAADM.Visibility = "Visible" } ELSE { $wpf.TI1VAADM.Visibility = "Hidden" }
}
#add the timer control
$timer1 = New-Object System.windows.Forms.Timer
#enable it
$timer1.Enabled = $True
$GetData = {
$wpf.dgUser.Items.Clear()
#Jim moved $files variable to script scope
$Script:Files = (Get-ChildItem -Filter *.json -Recurse -Path "$procPath\$userID").FullName
ForEach ($File in $Files) {
$jsonData = Convertfrom-Json -inputobject (GC $File -Raw)
$JobID = $File.split("\.")[-2] # got the JobID from the FileName itself
$row = New-Object PSObject
#Add-Member -inputObject $row -memberType NoteProperty -name "C1" -value "\\APW041SC1001\Invoke-CTXDevice-Files$\processed\DID0023566\VWM_00000073.log"
Add-Member -inputObject $row -memberType NoteProperty -name "C0" -value $JobID
#convert the Status into the icon file to show on column 2
$icon = switch ($jsonData.Status) {
'run' { $procIcon }
'Passed' { $okIcon }
'Warning' { $warnIcon }
'Failed' { $RedIcon }
'Info' { $InfoIcon }
default { $ArrowIcon }
}
Add-Member -inputObject $row -memberType NoteProperty -name "C2" -value $icon
Add-Member -inputObject $row -memberType NoteProperty -name "C3" -value $jsonData.Date
Add-Member -inputObject $row -memberType NoteProperty -name "C4" -value $jsonData.Time
Add-Member -inputObject $row -memberType NoteProperty -name "C5" -value $jsonData.User
Add-Member -inputObject $row -memberType NoteProperty -name "C6" -value $jsonData.Env
Add-Member -inputObject $row -memberType NoteProperty -name "C7" -value $jsonData.VM
Add-Member -inputObject $row -memberType NoteProperty -name "C8" -value $jsonData.Action
Add-Member -inputObject $row -memberType NoteProperty -name "C9" -value $jsonData.Remark
$view = $wpf.dguser.AddChild($row)
}
$updated = Get-Date
$wpf.StsBarItem.Content = " Last updated {0} Refresh in {1} seconds" -f $updated, $RefreshTime
$interval = $RefreshTime -as [int]
#interval must be in milliseconds
$timer1.Interval = ($interval * 1000) #1 second time interval
#start the timer
$timer1.Start()
}
#$wpf.TI1ADM.Visibility = "Hidden"
$wpf.BTExT.add_Click( {
#Update-Job
Write-Host "(T)Test actions"
write-host "Title: $T_PerformTitle"
write-host "Action: $T_PerformAction"
})
$wpf.BTExD.add_Click( {
Submit-VWMRequest -Action $D_PerformAction -PreFix $cfgVDPrefix -DTAP "DEV" -Model $cfgVDDmodel -PubName $cfgVDDpubName
})
#region RadioButton (T)est
$wpf.RB1T.add_Checked( {
$Global:T_PerformTitle = $this.content
$Global:T_PerformAction = "CloneWorkspace"
})
$wpf.RB2T.add_Checked( {
$Global:T_PerformTitle = $this.content
$Global:T_PerformAction = "NewWorkspace"
})
$wpf.RB3T.add_Checked( {
$Global:_PerformTitle = $this.content
$Global:T_PerformAction = "CloneRoamingWinProfile"
})
$wpf.RB4T.add_Checked( {
$Global:_PerformTitle = $this.content
$Global:T_PerformAction = "ResetRoamingWinProfile"
})
#endregion
#region DataGrid Selection
#Jim added data grid event watch
$wpf.dgUser.add_SelectedCellsChanged( {
#Check if click is in job-ID column
if ($_.addedcells.column.Header -eq 'Job-ID') {
#Grab cell content, depends on the C0 name you have given this column above, will stop working if you cnage that
$cellContent = $wpf.dgUser.SelectedCells.Item(0).item.C0
#grab the matching json file path from files that matches the job ID, doing it this way so I son't have to go back to the file system again as this may be costly
if (($Script:files | Measure-Object).count -gt 1) {
$jsonPath = $Script:files -match $cellContent
} else {
$jsonPath = $Script:files
}
# Get path and filename from the json file we matched
$JsonFileName = Split-Path $jsonPath -leaf
$jsonPath = Split-Path $jsonPath -Parent
#change json filename to log, will break if there is a second 'job' in json name and join it to path
#Path assumes log file is in same directory as the json file
# If you are scared of job appearing twice in the json filename, we could change it to -replace and use regex
$logPath = Join-Path $jsonPath $JsonFileName.Replace('Job', 'VWM').Replace('.json', '.log')
#Test for file
if (Test-Path $logPath) {
#Opens log with OS default editor
Invoke-Item $logPath
}
else {
#Hopefully sensible error message
Write-Error "Log file at $logPath could not be found in the same directory as the related JSON file."
}
}
})
#endregion
#region RadioButton (D)evelop
$wpf.RB1D.add_Checked( {
$Global:D_PerformTitle = $this.content
$Global:D_PerformAction = "ReInstall"
})
$wpf.RB2D.add_Checked( {
$Global:D_PerformTitle = $this.content
$Global:D_PerformAction = "ResetLocalWinProfile"
})
$wpf.RB3D.add_Checked( {
$Global:D_PerformTitle = $this.content
$Global:D_PerformAction = "nestedVT"
})
$wpf.RB4D.add_Checked( {
$Global:D_PerformTitle = $this.content
$Global:D_PerformAction = "ForceReboot"
})
#endregion
# disbable not functional radio Buttons
$wpf.RB1T.isEnabled = $false
$wpf.RB2T.isEnabled = $false
$wpf.RB3T.isEnabled = $false
$wpf.RB4T.isEnabled = $false
$wpf.RB2D.isEnabled = $false
$wpf.RB4D.isEnabled = $false
$timer1.add_Tick($GetData)
# Show GUI
$wpf.VWM.Showdialog() | out-null