MyTickle.psm1
#requires -version 5.0 #dot source module functions . $PSScriptRoot\myTickleFunctions.ps1 #region Define module variables #the default number of days to display for Show-TickleEvents $TickleDefaultDays = 7 #database defaults $TickleDB = 'TickleEventDB' $TickleTable = 'EventData' $TickleServerInstance = ".\SqlExpress" #endregion #region Class definition Class myTickle { [string]$Event [datetime]$Date [string]$Comment [int32]$ID [boolean]$Expired = $False hidden [timespan]$Countdown #constructor myTickle([int32]$ID,[string]$Event,[datetime]$Date,[string]$Comment) { $this.ID = $ID $this.Event = $Event $this.Date = $Date $this.Comment = $Comment if ($Date -lt (Get-Date)) { $this.Expired = $True } $ts = $this.Date - (Get-Date) if ($ts.totalminutes -lt 0) { $ts = New-Timespan -Minutes 0 } $this.Countdown = $ts } } #close class Update-TypeData -TypeName myTickle -DefaultDisplayPropertySet ID,Date,Event,Comment -force #endregion #region Define module aliases Set-Alias -Name gte -Value Get-TickleEvent Set-Alias -name ate -Value Add-TickleEvent Set-Alias -name rte -Value Remove-TickleEvent Set-Alias -name ste -Value Set-TickleEvent Set-Alias -name shte -Value Show-TickleEvent #endregion $export = @{ Variable = 'TickleDefaultDays','TickleDB','TickleTable','TickleServerInstance' Alias = 'gte','ate','rte','shte','ste' } Export-ModuleMember @export <# function = 'Get-TickleEvent','Set-TickleEvent','Add-TickleEvent', 'Remove-TickleEvent','Show-TickleEvent','Initialize-TickleDatabase', 'Export-TickleDatabase','Import-TickleDatabase' #> |