The official SPE docs does not provide the available option parameters for every field type on the Read-Variable command, so I’m curious if it is possible to block of dates before a set date on a date field datepicker?
-
What do you mean by the block of dates? Can you please elaborate more?– Sumit BhatiaAug 31, 2022 at 12:15
-
Block like for example dates before 8/24/2022 are not selectable– LalaAug 31, 2022 at 13:43
-
1As of SPE 6.3 there is no OOTB way to add attributes to the date picker which would influence the min/max selectable dates. As proposed by @SumitBhatia you could go the validation message approach by prompting the user to make corrections.– Michael WestAug 31, 2022 at 13:58
1 Answer
The Sitecore document for Read-Variable
provides these parameters to use.
- Name - the name of the PowerShell variable - without the $ sign
- Value - the initial value of the variable - if the variable have not been created prior to launching the dialog - this will be its value unless the user changes it. if Value is not specified - the existing variable name will be used.
- Title - The title for the variable shown above the variable editor.
- Tooltip - The hint describing the parameter further - if the -ShowHints parameter is provided this value will show between the Variable Title and the variable editor.
- Editor - If the default editor selected does not provide the functionality expected - you can specify this value to customize it (see examples)
- Tab - if this parameter is specified on any Variable the multi-tab dialog will be used instead of a simple one. Provide the tab name on which the variable editor should appear.
And for the field types
, it has the following description.
- Root - for some Item selecting editors you can provide this to limit the selection to only part of the tree
- Source - for some Item selecting editors you can provide this to parametrize the item selection editor. (Refer to examples for some sample usages)
- Lines - for String variable you can select this parameter if you want to present the user with the multiline editor. The for this parameter is the number of lines that the editor will be configured with.
- Domain - for user and role selectors you can limit the users & roles presented to only the domain - specified)
Read more - https://doc.sitecorepowershell.com/appendix/common/read-variable#parameters-less-than-object-greater-than
For the date field
, you can use the parameters like this.
$item = Get-Item master:\content\home
$result = Read-Variable -Parameters `
@{ Name = "from"; Value=[System.DateTime]::Now.AddDays(-5); Title="Start Date"; Tooltip="Date since when you want the report to run"; Editor="date time"}
To perform a date validation
this solution will work for you.
$result = Read-Variable -Parameters `
@{ Name = "dateTimeSelector"; Value=[System.DateTime]::Now.AddDays(5); Title="Start Date"; Tooltip="Date since when you want the report to run"; Editor="date time"} `
-Description "This Dialog shows a compare" `
-Title "Date Compare" -Width 500 -Height 480 `
-OkButtonName "Proceed" -CancelButtonName "Abort" `
-Validator {
$selectedValue = $variables.dateTimeSelector.Value
$compareDate = Get-Date 2022-8-24
if ($selectedValue -lt $compareDate)
{
$variables.dateTimeSelector.Error ="Date before Aug 24 2022 are not selectable"
}
}
So if you will execute this, it will show the validation message like this.
For more about the validation, please refer to this link.
Hope this makes sense.
-
But I cannot configure it in such a way that dates before august 24 2022 are not selectable, for example?– LalaAug 31, 2022 at 13:45
-