Skip to content

Commit bc88c6d

Browse files
authored
Merge pull request #224 from PetriAsi/fix/powershell5.1-combatibility#223
fix powershell 5.1
2 parents f4592ae + bc48d74 commit bc88c6d

File tree

74 files changed

+235
-219
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

74 files changed

+235
-219
lines changed

SnipeitPS/Private/Invoke-SnipeitMethod.ps1

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -38,13 +38,21 @@ function Invoke-SnipeitMethod {
3838
if ( $null -ne $SnipeitPSSession.legacyUrl -and $null -ne $SnipeitPSSession.legacyApiKey ) {
3939
[string]$Url = $SnipeitPSSession.legacyUrl
4040
Write-Debug "Invoke-SnipeitMethod url: $Url"
41-
$Token = ConvertFrom-SecureString -AsPlainText -SecureString $SnipeitPSSession.legacyApiKey
42-
41+
if($PSVersionTable.PSVersion -ge '7.0'){
42+
$Token = ConvertFrom-SecureString -AsPlainText -SecureString $SnipeitPSSession.legacyApiKey
43+
} else {
44+
#convert to plaintext via credential
45+
$Token = (New-Object PSCredential "user",$SnipeitPSSession.legacyApiKey).GetNetworkCredential().Password
46+
}
4347
} elseif ($null -ne $SnipeitPSSession.url -and $null -ne $SnipeitPSSession.apiKey) {
4448
[string]$Url = $SnipeitPSSession.url
4549
Write-Debug "Invoke-SnipeitMethod url: $Url"
46-
$Token = ConvertFrom-SecureString -AsPlainText -SecureString $SnipeitPSSession.apiKey
47-
50+
if($PSVersionTable.PSVersion -ge '7.0'){
51+
$Token = ConvertFrom-SecureString -AsPlainText -SecureString $SnipeitPSSession.apiKey
52+
} else {
53+
#convert to plaintext via credential
54+
$Token = (New-Object PSCredential "user",$SnipeitPSSession.apiKey).GetNetworkCredential().Password
55+
}
4856
} else {
4957
throw "Please use Connect-SnipeitPS to setup connection before any other commands."
5058
}

SnipeitPS/Private/Set-SnipeitPSLegacyApiKey.ps1

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,11 @@ function Set-SnipeitPSLegacyApiKey {
88
)
99
process {
1010
if ($PSCmdlet.ShouldProcess("ShouldProcess?")) {
11-
$SnipeitPSSession.legacyApiKey = ConvertTo-SecureString -AsPlainText -String $apiKey
11+
if($PSVersionTable.PSVersion -ge '7.0'){
12+
$SnipeitPSSession.legacyApiKey = ConvertTo-SecureString -AsPlainText -String $apiKey
13+
} else {
14+
$SnipeitPSSession.legacyApiKey = ConvertTo-SecureString -Force -AsPlainText -String $apiKey
15+
}
1216
}
1317
}
1418
}

SnipeitPS/Public/Connect-SnipeitPS.ps1

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,11 @@ function Connect-SnipeitPS {
6969
switch ($PsCmdlet.ParameterSetName) {
7070
'Connect with url and apikey' {
7171
$SnipeitPSSession.url = $url.AbsoluteUri.TrimEnd('/')
72-
$SnipeitPSSession.apiKey = ConvertTo-SecureString -AsPlainText -String $apiKey
72+
if($PSVersionTable.PSVersion -ge '7.0'){
73+
$SnipeitPSSession.apiKey = ConvertTo-SecureString -AsPlainText -String $apiKey
74+
} else {
75+
$SnipeitPSSession.apiKey = ConvertTo-SecureString -String $apiKey -AsPlainText -Force
76+
}
7377
}
7478

7579
'Connect with url and secure apikey' {

SnipeitPS/Public/Get-SnipeitAccessory.ps1

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -102,12 +102,12 @@ function Get-SnipeitAccessory() {
102102
GetParameters = $SearchParameter
103103
}
104104

105-
if ($PSBoundParameters.ContainsKey('apiKey')) {
105+
if ($PSBoundParameters.ContainsKey('apiKey') -and '' -ne [string]$apiKey) {
106106
Write-Warning "-apiKey parameter is deprecated, please use Connect-SnipeitPS instead."
107107
Set-SnipeitPSLegacyApiKey -apiKey $apikey
108108
}
109109

110-
if ($PSBoundParameters.ContainsKey('url')) {
110+
if ($PSBoundParameters.ContainsKey('url') -and '' -ne [string]$url) {
111111
Write-Warning "-url parameter is deprecated, please use Connect-SnipeitPS instead."
112112
Set-SnipeitPSLegacyUrl -url $url
113113
}
@@ -137,7 +137,7 @@ function Get-SnipeitAccessory() {
137137

138138
end {
139139
# reset legacy sessions
140-
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
140+
if ($PSBoundParameters.ContainsKey('url') -and '' -ne [string]$url -or $PSBoundParameters.ContainsKey('apiKey') -and '' -ne [string]$apiKey) {
141141
Reset-SnipeitPSLegacyApi
142142
}
143143
}

SnipeitPS/Public/Get-SnipeitAccessoryOwner.ps1

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,12 +38,12 @@ function Get-SnipeitAccessoryOwner() {
3838
Method = 'GET'
3939
}
4040

41-
if ($PSBoundParameters.ContainsKey('apiKey')) {
41+
if ($PSBoundParameters.ContainsKey('apiKey') -and '' -ne [string]$apiKey) {
4242
Write-Warning "-apiKey parameter is deprecated, please use Connect-SnipeitPS instead."
4343
Set-SnipeitPSLegacyApiKey -apiKey $apikey
4444
}
4545

46-
if ($PSBoundParameters.ContainsKey('url')) {
46+
if ($PSBoundParameters.ContainsKey('url') -and '' -ne [string]$url) {
4747
Write-Warning "-url parameter is deprecated, please use Connect-SnipeitPS instead."
4848
Set-SnipeitPSLegacyUrl -url $url
4949
}
@@ -57,7 +57,7 @@ function Get-SnipeitAccessoryOwner() {
5757

5858
end {
5959
# reset legacy sessions
60-
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
60+
if ($PSBoundParameters.ContainsKey('url') -and '' -ne [string]$url -or $PSBoundParameters.ContainsKey('apiKey') -and '' -ne [string]$apiKey) {
6161
Reset-SnipeitPSLegacyApi
6262
}
6363
}

SnipeitPS/Public/Get-SnipeitActivity.ps1

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -97,12 +97,12 @@ function Get-SnipeitActivity() {
9797
GetParameters = $SearchParameter
9898
}
9999

100-
if ($PSBoundParameters.ContainsKey('apiKey')) {
100+
if ($PSBoundParameters.ContainsKey('apiKey') -and '' -ne [string]$apiKey) {
101101
Write-Warning "-apiKey parameter is deprecated, please use Connect-SnipeitPS instead."
102102
Set-SnipeitPSLegacyApiKey -apiKey $apikey
103103
}
104104

105-
if ($PSBoundParameters.ContainsKey('url')) {
105+
if ($PSBoundParameters.ContainsKey('url') -and '' -ne [string]$url) {
106106
Write-Warning "-url parameter is deprecated, please use Connect-SnipeitPS instead."
107107
Set-SnipeitPSLegacyUrl -url $url
108108
}
@@ -132,7 +132,7 @@ function Get-SnipeitActivity() {
132132

133133
end {
134134
# reset legacy sessions
135-
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
135+
if ($PSBoundParameters.ContainsKey('url') -and '' -ne [string]$url -or $PSBoundParameters.ContainsKey('apiKey') -and '' -ne [string]$apiKey) {
136136
Reset-SnipeitPSLegacyApi
137137
}
138138
}

SnipeitPS/Public/Get-SnipeitAsset.ps1

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -228,12 +228,12 @@ function Get-SnipeitAsset() {
228228
GetParameters = $SearchParameter
229229
}
230230

231-
if ($PSBoundParameters.ContainsKey('apiKey')) {
231+
if ($PSBoundParameters.ContainsKey('apiKey') -and '' -ne [string]$apiKey) {
232232
Write-Warning "-apiKey parameter is deprecated, please use Connect-SnipeitPS instead."
233233
Set-SnipeitPSLegacyApiKey -apiKey $apikey
234234
}
235235

236-
if ($PSBoundParameters.ContainsKey('url')) {
236+
if ($PSBoundParameters.ContainsKey('url') -and '' -ne [string]$url) {
237237
Write-Warning "-url parameter is deprecated, please use Connect-SnipeitPS instead."
238238
Set-SnipeitPSLegacyUrl -url $url
239239
}
@@ -264,7 +264,7 @@ function Get-SnipeitAsset() {
264264

265265
end {
266266
# reset legacy sessions
267-
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
267+
if ($PSBoundParameters.ContainsKey('url') -and '' -ne [string]$url -or $PSBoundParameters.ContainsKey('apiKey') -and '' -ne [string]$apiKey) {
268268
Reset-SnipeitPSLegacyApi
269269
}
270270
}

SnipeitPS/Public/Get-SnipeitAssetMaintenance.ps1

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -71,12 +71,12 @@ function Get-SnipeitAssetMaintenance() {
7171
GetParameters = $SearchParameter
7272
}
7373

74-
if ($PSBoundParameters.ContainsKey('apiKey')) {
74+
if ($PSBoundParameters.ContainsKey('apiKey') -and '' -ne [string]$apiKey) {
7575
Write-Warning "-apiKey parameter is deprecated, please use Connect-SnipeitPS instead."
7676
Set-SnipeitPSLegacyApiKey -apiKey $apikey
7777
}
7878

79-
if ($PSBoundParameters.ContainsKey('url')) {
79+
if ($PSBoundParameters.ContainsKey('url') -and '' -ne [string]$url) {
8080
Write-Warning "-url parameter is deprecated, please use Connect-SnipeitPS instead."
8181
Set-SnipeitPSLegacyUrl -url $url
8282
}
@@ -106,7 +106,7 @@ function Get-SnipeitAssetMaintenance() {
106106

107107
end {
108108
# reset legacy sessions
109-
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
109+
if ($PSBoundParameters.ContainsKey('url') -and '' -ne [string]$url -or $PSBoundParameters.ContainsKey('apiKey') -and '' -ne [string]$apiKey) {
110110
Reset-SnipeitPSLegacyApi
111111
}
112112
}

SnipeitPS/Public/Get-SnipeitCategory.ps1

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,12 +81,12 @@ function Get-SnipeitCategory() {
8181
GetParameters = $SearchParameter
8282
}
8383

84-
if ($PSBoundParameters.ContainsKey('apiKey')) {
84+
if ($PSBoundParameters.ContainsKey('apiKey') -and '' -ne [string]$apiKey) {
8585
Write-Warning "-apiKey parameter is deprecated, please use Connect-SnipeitPS instead."
8686
Set-SnipeitPSLegacyApiKey -apiKey $apikey
8787
}
8888

89-
if ($PSBoundParameters.ContainsKey('url')) {
89+
if ($PSBoundParameters.ContainsKey('url') -and '' -ne [string]$url) {
9090
Write-Warning "-url parameter is deprecated, please use Connect-SnipeitPS instead."
9191
Set-SnipeitPSLegacyUrl -url $url
9292
}
@@ -115,7 +115,7 @@ function Get-SnipeitCategory() {
115115

116116
end {
117117
# reset legacy sessions
118-
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
118+
if ($PSBoundParameters.ContainsKey('url') -and '' -ne [string]$url -or $PSBoundParameters.ContainsKey('apiKey') -and '' -ne [string]$apiKey) {
119119
Reset-SnipeitPSLegacyApi
120120
}
121121
}

SnipeitPS/Public/Get-SnipeitCompany.ps1

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,12 +82,12 @@ function Get-SnipeitCompany() {
8282
GetParameters = $SearchParameter
8383
}
8484

85-
if ($PSBoundParameters.ContainsKey('apiKey')) {
85+
if ($PSBoundParameters.ContainsKey('apiKey') -and '' -ne [string]$apiKey) {
8686
Write-Warning "-apiKey parameter is deprecated, please use Connect-SnipeitPS instead."
8787
Set-SnipeitPSLegacyApiKey -apiKey $apikey
8888
}
8989

90-
if ($PSBoundParameters.ContainsKey('url')) {
90+
if ($PSBoundParameters.ContainsKey('url') -and '' -ne [string]$url) {
9191
Write-Warning "-url parameter is deprecated, please use Connect-SnipeitPS instead."
9292
Set-SnipeitPSLegacyUrl -url $url
9393
}
@@ -116,7 +116,7 @@ function Get-SnipeitCompany() {
116116

117117
end {
118118
# reset legacy sessions
119-
if ($PSBoundParameters.ContainsKey('url') -or $PSBoundParameters.ContainsKey('apiKey')) {
119+
if ($PSBoundParameters.ContainsKey('url') -and '' -ne [string]$url -or $PSBoundParameters.ContainsKey('apiKey') -and '' -ne [string]$apiKey) {
120120
Reset-SnipeitPSLegacyApi
121121
}
122122
}

0 commit comments

Comments
 (0)