Skip to content

Commit f3114d2

Browse files
initial upload
started with version 2.1.8
1 parent de6ce54 commit f3114d2

26 files changed

+8353
-1
lines changed

.gitignore

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
OOBEUIWPF.config
2+
*.zip
3+
!/Archive/
4+
/Archive/*
5+
!/Functions/Archive/
6+
/Functions/Archive/*
7+
!/.vscode/
8+
/.vscode/*
9+
*lab*
10+
*don*
11+
*dod*
12+
TSEnv.ps1

CHANGELOG.md

+250
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,250 @@
1+
# Change log for OOBEUIWPF.ps1
2+
3+
## 2.1.4 - Mar 18 2021
4+
5+
- Renamed script to OSDOOBEUI.ps1 to be more consistent with repo.
6+
- Changed AddButtons to AppButtons in XML; mistyped
7+
8+
## 2.1.3 - Mar 16 2021
9+
10+
- Changed Serial number to pull from WMI win32_BIOS; works with multiple platforms.
11+
- Removed task sequence variable checks for device info; always uses WMI
12+
- Check computer name when initiated; uses TS variable _SMSTSMachineName
13+
- Fixed Testmode; changed UI help cmdlet
14+
15+
## 2.1.2 - Mar 10, 2021
16+
17+
- Used Timezone spreadsheet instead of system timezones; accurately control index and time.
18+
- Fixed domain and timezone pre selection when validating device name
19+
20+
## 2.1.1 - Mar 04, 2021
21+
22+
- Changed domainname to domainFQDN in Set-OSDDomainVariables function
23+
- Added custom osd variable for domain join: domainname. Allows multiple 'Apply Network Settings' step in one TS using custom variable detection
24+
25+
## 2.1.0 - Dec 18, 2020
26+
27+
- Changed OSD values to log only when set.
28+
- Changed parameters used when Control_HideDomainCreds and Control_HideDomainList are set.
29+
30+
## 2.0.9 - Dec 17, 2020
31+
32+
- Fixed process OSD variables when hiding fields; doing a check if value exist before setting it.
33+
34+
## 2.0.8 - Dec 16, 2020
35+
36+
- Added Control_HideDomainCreds and Control_HideDomainList; used manually for SCCM BareMetal Imaging and only want a computer name prompt
37+
- Check for MININT in name during task sequence; set to computer name to null; otherwise set current name; used when enabling WinPE as Generate Name Method
38+
- Changed Generate Name Method option WinPE to TSEnv; checks for OSDComputerName is not default name MININT;
39+
- added clear option to Generate Name Method; nulls out any computer name
40+
- Changed Set-OSDComputerName to Update-OSDComputerName
41+
42+
## 2.0.7 - Nov 03, 2020
43+
44+
- Added the ability to bypass validation using a key set in config; must be done at Begin step as well
45+
- Added Function to convert (or flip) combobox to textbox; and visa versa
46+
- Added outhost trigger to UI console in config in addition to logging; Outputs execution actions. must enable verbose/debug for additional output.
47+
- Fixed domain account update process based on domain dropdown or txt field.
48+
49+
## 2.0.6 - Oct 20, 2020
50+
51+
- Removed MDT variables in the Set-OSDVariables.ps1; not used in OSD anymore. Causes issues with username and password
52+
53+
## 2.0.5 - Oct 18, 2020
54+
55+
- Fixed external site list path when importing; added function to check
56+
57+
## 2.0.4 - Oct 17, 2020
58+
59+
- Added System.Windows assembly; causes less crashing
60+
- Fixed external site list path when importing; reverts to working path and not relative path
61+
- Added two logo support for both UI and Splashscreen
62+
- Fixed logging when using debug or verbose switch; only logs based on settings
63+
- Added build version info to UI; only displays if in debug or verbose mode
64+
- Added version control check based on changelog.md for more accurate version and date
65+
- Added SYNOPSIS details to main script
66+
67+
## 2.0.3 - Oct 16, 2020
68+
69+
- Updated Splashscreen to display progress of menu status
70+
- Moved Splashscreen functions to separate file; set Splashscreen runspace to a global scope
71+
- Renamed Splashscreen functions to have 'UI' in the name; better consistency for all UI functions
72+
- Fixed config path checks to look for rooted path, relative, and absolute
73+
- Added Set-UIFieldElement to manage multiple parameter at once; shorting script for multiple element calls
74+
- Add configuration display format control for site list in dropdown; set by xml file.
75+
76+
## 2.0.2 - Oct 14, 2020
77+
78+
- Added Application page control with function; identifies active begin and flips controls dynamically.
79+
- Fixed workgroup option when not validating rules
80+
- Disable computer name update during site list change when not validating rules
81+
- Fixed Domain OU display control
82+
- added TimeZonelist function for cleaner script
83+
84+
## 2.0.1 - Oct 12, 2020
85+
86+
- Updated logging for each ps1 file in Function folder
87+
- Change ODJ to support blob (in unattend) or file option (from workgroup); changes the method of joining to domain
88+
- Added MDT variables to domain join function (Set-OSDVariables.ps1)
89+
- Added password generator as example and to password validation for ODJ join
90+
- renamed to ZTIOOBEUI.ps1 to follow ZTI or LTI format.
91+
92+
## 1.9.9 - Oct 05, 2020
93+
94+
- Added logging to main script
95+
- Added support to import an external site list; must be in CSV format.
96+
- Fixed colors in UI message to output supported Foreground colors in PowerShell.
97+
- Enforces TimeZone abbreviation converter to always use first selection
98+
- Add the ability to display site list but have it disabled
99+
100+
## 1.9.8 - Sept 19, 2020
101+
102+
- Fixed ODJ UI to hide only if Blob content is there, if blank file exist, still prompt for creds
103+
- Fixed focus on password and computer name
104+
- Added the ability to overwrite config file using TS variables or parameter
105+
106+
## 1.9.7 - Sept 16, 2020
107+
108+
- Added Offline Domain Join feature. Hides Domain and username and password if found.
109+
- Moved majority of functions to separate files
110+
111+
## 1.9.6 - Aug 19, 2020
112+
113+
- Changed OOBEWPFUI_OptionalPage.ps1 to OOBEWPFUI_SinglePage.ps1
114+
- Fixed Update-ComputerNameLocale site locale changer
115+
- fixed splash screen to close when menu opens; not after menu closes and not before menu opens. Added delay
116+
117+
## 1.9.5 - Aug 5, 2020
118+
119+
- Added example control in config.
120+
- fixed hidden logo option during WPF process
121+
- Update computer name change changer for site locale. dynamically grab site code
122+
123+
## 1.9.4 - July 20, 2020
124+
125+
- changed ShowClassificationColor to ShowClassificationProperty allowing to change the display text and color based on property in config.
126+
- added classification variable output: Classification, ClassificationColor,ClassificationLevel,ClassificationType,ClassificationCaveat
127+
- cleaned up debug/verbose output for easier reading
128+
- excluded name change warning message on initial entry
129+
130+
## 1.9.3 - July 16, 2020
131+
132+
- add example text (light gray) within computer name and domain account fields
133+
- Change validate to process basic computer name validation first, then rules
134+
- Add XAML attribute to auto focus to place cursor in computer name textbox (FocusedElement)
135+
- Changed computer name text font weight to bold
136+
- Add XAML attribute to default the computer name textbox to all caps (CharacterCasing)
137+
138+
## 1.9.1 - July 14, 2020
139+
140+
- Rebuild Computer Name Rules to output psobject instead of hashtables; allows to be used by other functions; removed perform actions
141+
- Added name rule perform actions to buttons for better control
142+
- Fixed Begin validation check. Wasn't checking computer name if changed just before begin/ready
143+
- Set Begin/ready buttons to disabled, until validate is performed.
144+
- Changed UI Message to show different colors based on severity type (errors, warnings, info)
145+
- Add handlers to monitor Computer Name change and forces to validate again before pressing begin/ready
146+
- Renamed Update-LocalebyClassification to Update-UIDomainFields. Update domain to filter on classification
147+
- Changed Classification combobox to readonly textbox; add filter control for classID
148+
- Removed repeating debug messages and changed Get-SMSTSEnv to use script scope variable
149+
150+
## 1.8.6 - July 13, 2020
151+
152+
- Add logo position for left, right, both, or hidden on menu and splash screen. Adjust position to be centered in position
153+
- Fixed domain name selection when using dropdown. selection would go revert to default when begin is pressed.
154+
- Updated splashscreen with progressbar
155+
156+
## 1.8.5 - July 12, 2020
157+
158+
- Add Get-TimeZoneIndex function. Updates the MDT OSD variable Timezone with index number instead of standard name.
159+
- Add Update-computer name function. Site locale selection will update the computer name with the 4 characters site id
160+
161+
## 1.8.4 - July 11, 2020
162+
163+
- Changed _SMSAssetTag variable check to AssetTag
164+
- Added Language Locale for future support
165+
166+
## 1.8.1 - July 10, 2020
167+
168+
- Changed domain type to domain for domain join.
169+
- Added OSDNetworkJoinType to a variable to output verbose.
170+
- Added debug (if set to true) to display password for troubleshooting
171+
- Issue with computer name rules when multiple hashes are present; added minimum character identifier check
172+
173+
## 1.8.0 - July 9, 2020
174+
175+
- Updated script to support Visual Studio Code; added VSE detection and cleaned up script path check
176+
- Changed Get-WMIObject to Get-CIMInstance to support PowerShell 7.0 or higher.
177+
- Added AccountDomainType to filter domains based on type. This also forces the filtered domain to populate in user account as the primary domain.
178+
- Add background color control. Allows main blue color to be replaced.
179+
- Removed the computer name from being filled by OSDcomputername value upon bootup in MDT.
180+
- Changed process messages from Verbose to debug output
181+
- Remove network security option. 802.1x can be configured using separate script triggered by UI outputs
182+
183+
## 1.7.8 - July 8, 2020
184+
185+
- Add domain list dropdown features; allow to force domain selection instead of mistyping domain. Only useful if domain list is populated in configuration
186+
- Fixed Naming rules validation when disabled. Hides validate button and fields and doesn't do rule check
187+
- Renamed Rule Name Id to be generic in UI to allow more customizations. Config will populate the names based on rule set
188+
- renamed inputs names to easily search names by wildcard search "input*; provides a a function to easily reset fields if errors previously.
189+
- Fixed rule set where 39 and 89 was the same as 3 or 8; also fixed where a '19' was detected as '39' or '89'; built a more dynamic regex expression
190+
[stackoverflow](https://stackoverflow.com/questions/62765844/powershell-regex-validate-computer-name)
191+
- Fixed Apps selection. Lists all apps and descriptions. Add variables to OSD
192+
- Cleaned up code using Visual studio code plugins. Changed function to use proper nouns and fixed misspelling and removed empty spaces
193+
- Centered Objects in XAML using even numbers. Aligned objects evenly making it more fluid. Lightened Hardware and Identity Text
194+
- Added workgroup support and handler to update UI with workgroup info: Added OSD variables for workgroup join
195+
- Added AllowWorkgroupJoined configuration; allows workgroup selection
196+
- Added Reset-HighlightedFields to reset all inputs and error message each time validation is done
197+
198+
## 1.6.1 - July 2, 2020
199+
200+
- Add Validate-DomainAccount function to identify and validate "domain\username" inputs and export each part as variables
201+
- Fixed Domain FQDN issue; resolve FQDN domain name base on locale and populates admin account
202+
203+
## 1.5.0 - July 1, 2020
204+
205+
- Fixed issue with Rule not finding exact match when # symbols exist
206+
- Fixed classification dropdown
207+
- Fixed Domain OU dropdown
208+
- Add FQDN list based on classification; auto update UI when name is validated
209+
210+
## 1.4.0 - June 30, 2020
211+
212+
- Adding domain an domain OU functionality to support multiple domains
213+
- Added notes to configuration file
214+
215+
## 1.2.0 - June 26, 2020
216+
217+
- revamped standard naming rules from checking lengths in name to full regex build (from rules in config)
218+
- Requested regex assistance to community to build regex query: [stackoverflow](https://stackoverflow.com/questions/62580859/using-regex-for-complicated-naming-convention)
219+
220+
## 1.2.0 - June 25, 2020
221+
222+
- COI identifier not testing when name changes; added clear field functionality
223+
224+
## 1.2.0 - June 23, 2020
225+
226+
- Adding additional features such as displaying appropriate information when the correct computer name
227+
- locale is provided and ensure its feeding the variables for the deployment process for application installs.
228+
229+
## 1.5.0 - June 15, 2020
230+
231+
- Added splash screen to hide loading window
232+
- Added Validate button
233+
234+
## 1.2.0 - June 10, 2020
235+
236+
- add sub tab menu to show naming convention output
237+
238+
## 1.1.0 - June 5, 2020
239+
240+
- changed design from 3 pages to one with optional app page
241+
242+
## 1.0.1 - June 2, 2020
243+
244+
- Basic PowerShell output for xaml
245+
- Added XML for configurations
246+
- Add network detection when multiple NICs exist
247+
248+
## 1.0.0 - June 1, 2020
249+
250+
- initial UI design

0 commit comments

Comments
 (0)