Download the PHP package depa/middleware-formularhandler without Composer
On this page you can find all versions of the php package depa/middleware-formularhandler. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download depa/middleware-formularhandler
More information about depa/middleware-formularhandler
Files in depa/middleware-formularhandler
Package middleware-formularhandler
Short Description The middleware formularhandler is a PSR-15 middleware that provides handling from formular data in a Zend Expressive application
License MIT
Homepage https://github.com/depa-berlin/Middleware-FormularHandler
Informations about the package middleware-formularhandler
Middleware-FormHandler
This library allows you to handle your forms, check for missing fields and only uses fields that you realy expect to be submitted.
Installation
Run the following to install this library:
Info
If your form has fields that are not defined inside the config, the handler will not use them due to security reasons.
Documentation
At the bottom of the Doc, i'll show you a quick example on how the config is build like.
The Implementation
To Implement the Middleware, just add a Route to your routes files that passes it's request into the middleware:
after that, be sure to provide a config-file inside your config/autoload folder, that contains anything the Middleware needs to check your forms. We recommend you to use our config-file and just adjust it to fit your needs
The needed Data
The Formhandler needs JSON-Requests to run properly and also it responds with JSON, describing whats going on.
The Adapters
Currently there are 2 working Adapters:
-
phpmail
definition looks like this:phpmail sends the mail (as you may expect) via the php method: mail().
-
smtpmail
definition looks like this:smtpmail sends the mail via Swift_SmtpTransport.
you can implement them (as later described) as global or as local ones, global adapters do overwrite the local ones.
The Local-Adapters
The Adapter field must be directly inside the form-definition:
The Global-Adapters
A Global Adapter is defined in the very top of the config:
if you defined a global adapter and want to use it, go ahead and put the name of it (in this case: globalTestAdapter-1) inside of the adapter-field of your form-config:
The EMail-Template
The Template, you specified in the Config can be dynamic through twig:
the variables you use must be valid fields of your form and also defined in your config.
The EMail-Subject
Like the EMail-Template, also the EMail-Subject do support the twig-renderer.
The Reply-To Header
The E-Mail Adapter's can handle with the "Reply-To" email-header you can define it inside the Adapter config like this:
reply-to only works if:
- reply-to is defined and the following is correct;
- Status is defined and true;
- field is defined (and exists in config) or not defined (but then one field of your config must be type of email):
The Required-Attribute
The Formhandler can check if a field is required in your form and dont accept the request if it is missing. if you don't define required or required as false, the handler might not get data of the field because it was missing in the request. If you want to set a field as required add this into the config of the field:
The Example
Credits
This bundle has been developed by designpark.
License
The MIT License (MIT). Please see License File for more information.
All versions of middleware-formularhandler with dependencies
psr/container Version ^1.0
zendframework/zend-servicemanager Version ^3.4
swiftmailer/swiftmailer Version ^6.2
true/punycode Version ^2.1
zendframework/zend-problem-details Version ^1.0
zendframework/zend-json Version ^3.1
zendframework/zend-diactoros Version ^2.1
twig/twig Version ^2.11