承接 in2code/powermail 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

in2code/powermail

Composer 安装命令:

composer require in2code/powermail

包简介

Powermail is a well-known, editor-friendly, powerful and easy to use mailform extension for TYPO3 with a lots of features

README 文档

README

Powermail is a well-known, editor-friendly, powerful and easy to use mailform extension for TYPO3 with a lots of features (spam prevention, marketing information, optin, ajax submit, diagram analysis, etc...).

1. Documentation overview

2. Installation

Quick guide:

  • Just install this extension - e.g. composer require in2code/powermail
  • Add a static typoscript template to your root template
  • Add a new form (with one or more pages and with some fields to a page or a folder)
  • Add a new pagecontent (plugin) with type "powermail" and choose the former saved form
  • That's all, you can view the result in the frontend

3. Administration corner

3.1 Versions and Support

Powermail TYPO3 PHP Support/Development
13.x 13.x 8.3 - 8.x Features, Bugfixes, Security Updates
12.x 12.x 8.1 - 8.2 Bugfixes, Security Updates
11.x 12.x 8.1 - 8.2 Support dropped
10.x 11.x 7.4 - 8.1 Support dropped (paid backports are possible)
9.x 11.x 7.4 Support dropped
8.x 10.x 7.2 - 7.4 Support dropped (paid backports are possible)
7.x 8.7 - 9.x 7.0 - 7.4 Support dropped
6.x 8.7 - 9.x 7.0 - 7.x Support dropped

Do you need free support? There is a kind TYPO3 community that could help you. You can ask questions at https://stackoverflow.com and tag your question with TYPO3 and Powermail. In addition there is a slack channel in the TYPO3 slack ext-powermail.

3.2 Suggested Extensions for powermail

  • email2powermail Automatically convert emails to a link to a powermail form Link
  • powermailrecaptcha Google recaptcha Link
  • invisiblerecaptcha Google invisible recaptcha Link
  • powermailextended Is just an example extension how to extend powermail with new fields or use signals Link
  • powermail_cond Add conditions (via AJAX) to powermail forms for fields and pages Link
  • powermail_fastexport Extend powermail for faster export to .xlsx / .csv files. This is useful if you have many records to be exported. Link

3.3 Product Owner

The product owner and author of the extension is Marcus Schwemer from in2code. Beside that every in2code colleague is allowed to support further development if she/he wants. In addition there are a lot of other contributors that helped to improve the extension with their Pull Requests - thank you for that!

3.4 Release Management

Powermail uses semantic versioning which basically means for you, that

  • bugfix updates (e.g. 1.0.0 => 1.0.1) just includes small bugfixes or security relevant stuff without breaking changes.
  • minor updates (e.g. 1.0.0 => 1.1.0) includes new features and smaller tasks without breaking changes.
  • major updates (e.g. 1.0.0 => 2.0.0) normally includes basic refactoring, new features and also breaking changes.

3.5 Automatic Testing

Behaviour tests

There is a huge testparcours that have to be passed before every release. For example there is an automatic test where the browser tries to submit 18 different strings and numbers to a field that accepts only phone numbers to test serverside validation. After that the same process is done for clientside valiation. There are also some smaller tests like "Is it possible to submit a form on a page where two different forms are stored?".

See readme.md for some more information about behat and selenium tests on powermail.

Unit tests

At the moment powermail offers many unit tests that have to be passed before every release. See more information about unit tests or code coverage in powermail in the readme.md

3.6 Code quality

Beside respecting PSR-12 and TYPO3 coding guidelines, it's very important for the project to leave a file cleaner as before. Especially because it's a really large extension with a lot of functionality and a history of over 17 years (!) and of course some technical debts, that have to be fixed step by step.

Current quality tools are:

  • php-cs-fixer
  • phpstan (level 8)
  • php linter
  • TypoScript linter

3.7 Contribution

Pull requests are welcome in general! Nevertheless please don't forget to add a description to your pull requests. This is very helpful to understand what kind of issue the PR is going to solve.

  • Bugfixes: Please describe what kind of bug your fix solve and give us feedback how to reproduce the issue. We're going to accept only bugfixes if I can reproduce the issue.
  • Features: Not every feature is relevant for the bulk of powermail users. In addition: We don't want to make powermail even more complicated in usability for an edge case feature. Please discuss a new feature before.

3.8 Development

Compile and minify (uglify) JavaScript, compress CSS:

$ cd Resources/Private
$ npm install
$ ./node_modules/.bin/gulp

4. Screenshots

4.1 Example form with bootstrap classes:

Example form

4.2 Backend module mail list:

Backend Module

4.3 Backend module reporting:

Backend Module2

5. Additional supplementary extensions

5.1 EXT:powermail_frontend

This extension contains the previous plugins pi2 - pi4. Since the public release of v13 this functionality is only available as a premium extension.

5.2 EXT:powermail_cleaner

EXT:powermail_cleaner gives administrators and editors more flexibility in cleaning up saved email records and in displaying additional data protection texts per form. This is available as a premium extension.

5.4 EXT:powermail_powerpack

This extension will collect some additional functionality and will be available as a premium extension.

in2code/powermail 适用场景与选型建议

in2code/powermail 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 2.59M 次下载、GitHub Stars 达 99, 最近一次更新时间为 2016 年 09 月 28 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「form」 「typo3」 「mailform」 「spamprevention」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 in2code/powermail 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 in2code/powermail 我们能提供哪些服务?
定制开发 / 二次开发

基于 in2code/powermail 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 2.59M
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 103
  • 点击次数: 17
  • 依赖项目数: 42
  • 推荐数: 3

GitHub 信息

  • Stars: 99
  • Watchers: 13
  • Forks: 191
  • 开发语言: PHP

其他信息

  • 授权协议: GPL-2.0-or-later
  • 更新时间: 2016-09-28