jpmschuler/powermail-limits
Composer 安装命令:
composer require jpmschuler/powermail-limits
包简介
TYPO3 EXT:powermail_limits - Addition to EXT:powermail which allows limits for form submissions
README 文档
README
EXT:powermail_limits
This extension allows you to set a submission limit for a TYPO3 EXT:powermail form
Compatibility
v2.x of this Extension is compatible with 12LTS
- TYPO3: ^12
- PHP: ^8.0 (tested with 8.2)
- EXT:powermail ^12.4.0
v1.x of this Extension is compatible with 11LTS
- TYPO3: ^11
- PHP: ^7.4 || ^8.0
- EXT:powermail ^10
Installation
composer req jpmschuler/powermail-limits
What it does
A form gets 3 new fields
has submission limit: enable and enter a max submission limit in order to enable this extension for a formhas waiting list: should the form be still available after submissions are full to create a waitlistshow allocation percentage: should there be an indicator for how many slots are left
After enabling a submission limit the form will get a new first "page" (or fieldset) prepended with an infobox showing there is a limit, if that limit is reached and if a waiting list exists. If however no waiting list was configured and the limit is reached only the infobox is shown and the rest of the form fields and submit won't be rendered. In case the limit was reached an additional mail will be sent to the configured recipient (probably editor responsible for the form) in order to be able to take actions.
Using a DataProcessor a field is added to the answers (thus visible in {powermail_all}, indicating if it is a valid
submission or a waiting list submission.
In case of a submission after the limit is reached the mail subject gets a prefix and the mail body gets a prefix
(depending on if waiting list or not). If there is an invalid submission (e.g. opened form early, others submitted and
filled limit, than late submit that old form) without an waiting list the mail record is marked hidden.
For forms without a waiting list you can disable or delete mails in the backend to make slots free again. For forms with a waiting list the limit will be counted by all non-disabled mails. Thus, probably you don't want to disable duplicates after the first waiting list registration was done, until the form goes offline. Contacting the applicants to move them from waiting list to valid slot is not done via the extension, but deemed a manual process, done after the form was disabled e.g. based on a CSV export.
Labels and Overrides
All labels are currently locally managed and available in en and de. Thus, they can easily be overridden.
The indictator is calculated in 10percent rounded-down steps, so e.g. if there are 87% of slots filled, the label for 80
is shown. This allows a bit of transparency without telling everybody that nobody registered for that 2000 participants
event or without telling everybody you really had only 8 slots.
form.submissionspercentage.0: enough free slots
form.submissionspercentage.10: enough free slots
form.submissionspercentage.20: enough free slots
form.submissionspercentage.30: enough free slots
form.submissionspercentage.40: enough free slots
form.submissionspercentage.50: enough free slots
form.submissionspercentage.60: still slots available
form.submissionspercentage.70: still slots available
form.submissionspercentage.80: still slots available
form.submissionspercentage.90: Warning! Only a few slots available
ToDo
- override backend module mail entry subject (currently the invalid and waitlist prefixes aren't saved)
- override answer page with visual warning prefix
- add backend powermail module deep link to limit reached mail
Preview
Infobox as first element in form
Dynamically added field about status
Dynamically added mail prefixes
Additional mail if limit reached
jpmschuler/powermail-limits 适用场景与选型建议
jpmschuler/powermail-limits 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 10.14k 次下载、GitHub Stars 达 3, 最近一次更新时间为 2023 年 05 月 04 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 jpmschuler/powermail-limits 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 jpmschuler/powermail-limits 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 10.14k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 3
- 点击次数: 8
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: GPL-2.0-or-later
- 更新时间: 2023-05-04









