fromholdio / silverstripe-schedulable
此模块为您数据对象和站点树添加了封存/过期排程功能。
1.1.0
2023-05-18 07:28 UTC
Requires
- silverstripe/cms: ~4.0 || ~5.0
This package is auto-updated.
Last update: 2024-09-18 10:33:59 UTC
README
此模块为您数据对象和站点树添加了封存/过期排程功能。
此外,还添加了一个GridFieldScheduledStatus
组件,允许您在GridField
中显示对象的排程状态。
要求
安装
composer require fromholdio/silverstripe-schedulable
详细信息 & 使用
基本上是即插即用 - 只需将Schedulable
扩展应用到您的DataObject
或SiteTree
类。
它通过增强常规的sql查询,并根据其封存/过期设置包含/排除记录来工作。如果阶段=Stage且您的用户有VIEW_DRAFT_CONTENT权限,或者您处于Admin控制器中,则不适用。
与版本化对象一起工作,当对象在活动版本化阶段被封存或过期于当前日期时,它们将不会出现在您的查询中。
提供一些额外的访问器
IsScheduleEmbargoed()
= 如果对象被封存(一旦封存日期/时间通过,则变为false)为trueIsScheduleExpired()
= 如果对象已过期(在达到过期日期/时间之前为false)为trueWillScheduleExpire()
= 如果对象目前未被封存,并将过期,但尚未过期,为truegetScheduleStatusLabel()
= 返回当前状态的易读描述(例如,“封存至 01/01/2020 12:00:00”)
如果对象同时有封存至日期/时间和过期日期/时间,getScheduleStatusLabel()
将反映最相关的当前状态。(因此,在这种情况下,它将返回“封存至X”,一旦该日期/时间通过,它将变为“将在Y过期”)。
将扩展应用到SiteTree
类的示例
--- Name: extensions --- SilverStripe\CMS\Model\SiteTree: extensions: - Fromholdio\Schedulable\Extensions\Schedulable
待办事项
- 更好的文档