If ( $LFCLI ) {

    ## Create the path to $FileToUpload and zip the specified directory if necessary
    If ( $(Get-Item $DataToUpload) -is [System.IO.DirectoryInfo] ) {
        $FileToUpload = '{0}\{1}.zip' -f $Global:OutputDirectory,$(Split-Path -Leaf $DataToUpload)
        Zip-Object -path $DataToUpload -dest $FileToUpload
        $DeleteAfterUpload = $true
    }
    Else {
        $FileToUpload = $DataToUpload
        $DeleteAfterUpload = $false
    }

    Install-PSAteraModule
    Import-Module -Name PSAtera
    Set-AteraAPIKey -APIKey $AteraAPIKey
    $LFHost = $(Get-AteraCustomValue -ObjectType Customer -ObjectId 9 -FieldName 'LiquidFiles Host URL').ValueAsString
    $FiledropURL = "${LFHost}/filedrop/cmd"

    ## Set the message properties for the file upload
    $From = '{0}@{1}.net' -f $Env:COMPUTERNAME,$($Global:MSPName -replace " ","").ToLower()
    $Subject = [System.IO.Path]::GetFileNameWithoutExtension($FileToUpload)
    $Message = ""

    If ( Test-Path $FileToUpload ) {
        LogMsg "Uploading ""${FileToUpload}"""

        If ( $DeleteAfterUpload ) {
            Try { Start-Process "${LFCLI}" -ArgumentList "filedrop /url:${FiledropURL} /from:""${From}"" /subject:""${Subject}"" /msg:""${Message}"" /c:n /deleteAfterUpload /f:""${FileToUpload}""" -Wait }
            Catch { LogErr $_.Exception.Message }
        }
        Else {
            Try { Start-Process "${LFCLI}" -ArgumentList "filedrop /url:${FiledropURL} /from:""${From}"" /subject:""${Subject}"" /msg:""${Message}"" /c:n /f:""${FileToUpload}""" -Wait }
            Catch { LogErr $_.Exception.Message }
        }    
    }
    Else { LogMsg "The specified file does not exist: ""${FileToUpload}""" }
}
Else { LogMsg "Could not upload any data because the LiquidFiles CLI tool was not found" }
