fromholdio/silverstripe-schedulable

此模块为您数据对象和站点树添加了封存/过期排程功能。

安装: 751

依赖项: 0

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 0

开放问题: 0

类型:silverstripe-vendormodule

1.1.0 2023-05-18 07:28 UTC

This package is auto-updated.

Last update: 2024-09-18 10:33:59 UTC


README

此模块为您数据对象和站点树添加了封存/过期排程功能。

此外,还添加了一个GridFieldScheduledStatus组件,允许您在GridField中显示对象的排程状态。

要求

安装

composer require fromholdio/silverstripe-schedulable

详细信息 & 使用

基本上是即插即用 - 只需将Schedulable扩展应用到您的DataObjectSiteTree类。

它通过增强常规的sql查询,并根据其封存/过期设置包含/排除记录来工作。如果阶段=Stage且您的用户有VIEW_DRAFT_CONTENT权限,或者您处于Admin控制器中,则不适用。

与版本化对象一起工作,当对象在活动版本化阶段被封存或过期于当前日期时,它们将不会出现在您的查询中。

提供一些额外的访问器

  • IsScheduleEmbargoed() = 如果对象被封存(一旦封存日期/时间通过,则变为false)为true
  • IsScheduleExpired() = 如果对象已过期(在达到过期日期/时间之前为false)为true
  • WillScheduleExpire() = 如果对象目前未被封存,并将过期,但尚未过期,为true
  • getScheduleStatusLabel() = 返回当前状态的易读描述(例如,“封存至 01/01/2020 12:00:00”)

如果对象同时有封存至日期/时间和过期日期/时间,getScheduleStatusLabel()将反映最相关的当前状态。(因此,在这种情况下,它将返回“封存至X”,一旦该日期/时间通过,它将变为“将在Y过期”)。

将扩展应用到SiteTree类的示例

---
Name: extensions
---
SilverStripe\CMS\Model\SiteTree:
  extensions:
    - Fromholdio\Schedulable\Extensions\Schedulable

待办事项

  • 更好的文档