Functions/Customization/Import-PASThemeImage.ps1
# .ExternalHelp psPAS-help.xml Function Import-PASThemeImage { [CmdletBinding(SupportsShouldProcess)] param( [parameter( Mandatory = $true, ValueFromPipelinebyPropertyName = $true )] [string]$Name, [parameter( Mandatory = $true, ValueFromPipelinebyPropertyName = $true )] [ValidateNotNullOrEmpty()] [ValidateScript( { Test-Path -Path $_ -PathType Leaf })] [string]$ImageFile ) BEGIN { Assert-VersionRequirement -SelfHosted Assert-VersionRequirement -RequiredVersion 14.4 $Request = @{} $Request['Method'] = 'POST' #Create URL for request $Request['URI'] = "$($psPASSession.BaseURI)/API/Images/" }#begin PROCESS { #Convert File to byte array $FileBytes = $ImageFile | Get-ByteArray $Request['Body'] = @{ 'Name' = $Name 'Content' = $FileBytes } | ConvertTo-Json $Request['Debug'] = $false if ($PSCmdlet.ShouldProcess($Name, 'Add Image')) { try { #send request to web service Invoke-PASRestMethod @Request } catch { throw $_ } } }#process END { }#end } |