Menus/ISEMenu.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
$menuinputpath = Join-Path $PSScriptRoot "menu_input.txt"
if (Test-Path $menuinputpath)
{
    $menuinput = Get-Content $menuinputpath
    $Values = [ordered]@{}
    $Key = $null
    foreach ($input in $menuinput)
    {
        if ($input -notmatch "=")
        {
            $Values[$input] = [ordered]@{}
            $Values[$input].Title = $input
            $Key = $input
            continue
        }
        else
        {        
            $input = $input.TrimStart("=")
            If ($Key -ne $null)
            {
                $Values[$key][$input] = @{}
                $Values[$key][$input].Title = $input
                $Values[$key][$input].Key = "$Key|$input"
            }
            else
            {
                $Values[$input] = $input
            }
        }
    }

    Import-Module $(Join-Path $PSScriptRoot "Menu.psm1") -Force
    $menuoutputpath = $(Join-Path $psscriptroot "menu_output.txt")
    Show-Menu -sMenuTitle "Select a valid Baseline" -hMenuEntries ([ref]$Values) | Out-File $menuoutputpath    
}
else
{
    Throw "No input specified!"
}