Opens or gets a SAPIEN forum web page.
<# | |
.SYNOPSIS | |
Gets or opens a SAPIEN forum page. | |
.DESCRIPTION | |
The Start-SAPIENForum.ps1 script opens the SAPIEN forum that you specify in | |
your default internet browser window. It can also search the forums (all of | |
them) for the search term that you specify. | |
To open a particular forum, use the Name parameter. If the value of the Name | |
parameter matches one forum name, the script opens the forum. Otherwise, it returns | |
objects that represent the forums. | |
To search all forums, use the Search parameter. | |
To get a list of SAPIEN forums, omit the Name or use the ListOnly parameter. | |
.PARAMETER Name | |
Enter the full or partial name of a forum. This parameter is optional. By default, | |
Start-SAPIENForum.ps1 returns an object that represents each forum. | |
.PARAMETER ListOnly | |
Instead of opening a forum, ListOnly returns a custom object for with the Name, URL, and Description of each forum. | |
.PARAMETER Search | |
Searches all forums for the specified term and opens the page with the results. Enter one or more search terms in a string. | |
.EXAMPLE | |
.\Start-SAPIENForum.ps1 | |
This command returns an object representing each SAPIEN forum. | |
.EXAMPLE | |
.\Start-SAPIENForum.ps1 -ListOnly | |
This command returns an object representing each SAPIEN forum. | |
.EXAMPLE | |
.\Start-SAPIENForum.ps1 -Name 'PowerShell Studio' | |
This command opens the PowerShell Studio forum. | |
.EXAMPLE | |
.\Start-SAPIENForum.ps1 -Name 'PowerShell Studio' -ListOnly | |
This command returns an object that represents the PowerShell Studio forum. | |
.EXAMPLE | |
.\Start-SAPIENForum.ps1 -Name GUI | |
This command opens the PowerShell GUI forum. | |
.EXAMPLE | |
.\Start-SAPIENForum.ps1 -Search 'How to Install PowerShell V 5.0 ' | |
This command searches all SAPIEN support forums for search query 'How to Install Powersehll V 5.0' and opens the results in your default internet browser. | |
.NOTES | |
=========================================================================== | |
Created with: SAPIEN Technologies, Inc., PowerShell Studio 2016 v5.2.111 | |
Created on: 2/25/2016 1:16 PM | |
Updated on: 3/22/2015 | |
Created by: June Blender | |
Organization: SAPIEN Technologies, Inc | |
Filename: Start-SAPIENForums.ps1 | |
Gist link: https://gist.github.com/juneb/496639bddf5dab1911ab | |
Thanks to Prasoon V. Karunan (@prasoonkarunan) for contributing the Search parameter. | |
===========================================================================#> | |
[CmdletBinding(DefaultParameterSetName = 'NameSet')] | |
param | |
( | |
[Parameter(ParameterSetName = 'NameSet')] | |
[String] | |
$Name, | |
[Parameter(ParameterSetName = 'NameSet')] | |
[Switch] | |
$ListOnly, | |
[Parameter(ParameterSetName = 'SearchSet')] | |
[ValidateNotNullOrEmpty()] | |
[String] | |
$Search | |
) | |
$script:Forums | |
$ForumUrl = 'http://www.sapien.com/forums/viewforum.php?f=' | |
$ForumTable = @' | |
Trial Software Questions, 8, Use this forum to ask questions before you buy. Need information on licensing or pricing? Questions about a trial version? This is the right place for you. No scripting questions, please. | |
Scripting Answers, 6, A collection of forums for questions about scripting in PowerShell and other languages. | |
Windows PowerShell, 18, Ask your Windows PowerShell-related questions, including questions on cmdlet development! | |
PowerShell GUIs, 21,Ask questions about creating Graphical User Interfaces (GUI) in PowerShell and using WinForms controls. | |
PowerShell Studio, 12, Support for all customers who have purchased a SAPIEN PowerShell Studio product license. This forum does not offer a response time guarantee. | |
PowerShell HelpWriter, 28, Product Support for PowerShell HelpWriter | |
PrimalScript, 11, Support for all customers who have purchased a PrimalScript product license. This forum does not offer a response time guarantee. | |
PrimalSQL, 14, Product support for PrimalSQL users | |
PrimalXML, 15, Product support for PrimalXML users | |
VersionRecall, 22, Support for all customers who have purchased a VersionRecall product license. This forum does not offer a response time guarantee. | |
WMI Explorer, 24, Product support for WMI Explorer users | |
Productivity Pack Support, 10, Product Support for the SAPIEN Productivity Pack | |
iPowerShell Pro, 17, Support forums for users of iPowerShell Pro | |
ChangeVue, 16, Product support for ChangeVue users | |
Customer Service, 7, Use this forum to ask about non-product related topics (login issues, product registrations, web site questions, etc.) No technical support questions, please. | |
VBScript, 19, Anything VBScript-related, including Windows Script Host, WMI, ADSI, and more. | |
Other Scripting Languages, 20, Other Scripting Languages | |
Feedback, 23, Anything you want to tell us? Praise? Criticism? Post it here. Please keep it professional and constructive. | |
Wish List and Feature Requests, 9, Post feature requests, product enhancement ideas, and other product-specific suggestions here. Do not post bug reports. | |
'@ | |
function Load-Forums | |
{ | |
try | |
{ | |
if ($script:Forums = ConvertFrom-Csv -InputObject $ForumTable -Header Name, URL, Description -ErrorAction Stop) | |
{ | |
$script:Forums | ForEach-Object { | |
$_.URL = "$ForumUrl$($_.URL)" | |
} | |
return $True | |
} | |
} | |
Catch | |
{ | |
throw 'Cannot load forum table. Contact @juneb_get_help.' | |
} | |
} | |
if (Load-Forums) | |
{ | |
if ($Search) | |
{ | |
$searchUrl = "http://www.sapien.com/forums/search.php?keywords=$Search" | |
Start-Process $searchUrl | |
break; | |
} | |
if (!$Name) | |
{ | |
return $script:Forums | |
} | |
else | |
{ | |
if ($match = $script:Forums | Where-Object Name -like "*$Name*") | |
{ | |
if ($ListOnly -or $match.count -gt 1) | |
{ | |
$match | |
} | |
else | |
{ | |
Start-Process $Match.URL | |
} | |
} | |
else | |
{ | |
Write-Warning "No forum name includes: $Name." | |
$script:Forums | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment