In the 370th issue of ProcessWire Weekly we're going to check out the latest version of the commercial FormBuilder module, introduce a couple of brand new third party modules, and more. Read on!
Welcome to the latest issue of ProcessWire Weekly. In this week's we're happy to share with you some very intresting module releases, including a new version of the popular commercial form building tool FormBuilder, as well as a couple of brand new modules: ListerProActionLimit from Robin Sallis and Fieldtype Geocoder from Neue Rituale GbR.
Our latest site of the week belongs to Rankmühle St. Märgen, which a notable landmark located in the Black Forest, mountainous region in the southwest Germany. Rankmühle is undergoing a major restoration process, and looking for donations.
Thanks to all of our readers for being here with us again, and as always, any feedback is most welcome – please don't hesitate to drop us a line if there's anything in your mind you'd like to share with us.
In the processwire.com blog this week: FormBuilder v50
In this week's post at the processwire.com blog Ryan introduces the latest iteration of one of his most profilic commercial modules, FormBuilder. From the post you can read more about the new features and updates included in FormBuilder version 50, as well as find detailed instructions for newly added Spam Trigger Words feature.
What's new in FormBuilder v50?
As Ryan explains in his post, the latest version doesn't really come with a single "major feature", but rather is a combination of numerous smaller updates and improvements. Here are some highlights from the v50 changelog:
- A new spam trigger words spam filter option has been added that filters messages matching words or rules that you define.
- Custom actions can be taken when spam message is identified: submission can be cancelled while pretending it was successful, you can choose to tell the user that the message was identified as spam and give them a chance to fix, or save a form entry while falling it as spam.
- The "save to page" option now supports nested forms (InputfieldFormBuilderForm) and Combo fields, and provides an additional form-to-page fields definition area for specifying connections between form and page fields, including subfields.
- Email subjects can include the submission ID, as well as named placeholders for any required form field (
- Numerous updates to the output frameworks included with FormBuilder, as well as removal of some deemed non-essential.
You'll find more details as well as a deep dive into the spam trigger words feature and other newly added features from the blog post, so be sure to check it out. Please note that this is still considered a beta release, so if you're running a production site with FormBuilder, you may want to wait a week or two before upgrading.
Sneak peek into the latest core updates
While the main area of focus for this week has obviously been the FormBuilder module and there's no new core version for this week, some updates were still made to the dev branch. One of those updates was a new method for the $files API variable one can use to check if a file exists, is readable/writable, and if it's a file, link, or directory:
- Check if a file exists:
- Check if a file exists and is readable or writable:
- Check if a file exists and is of expected type:
$files->exists('/path/file.ext', 'file')(other recognized type are 'link' and 'dir')
One particularly neat thing about this method is that it's possible to combine different keywords. For an example you could check if a file exists, is a regular file, and is both readable and writable with
$files->exists('/path/file.ext', 'readable writable file').
That's all for this week's core updates section. We'll likely have more core updates to share by next week, but in the meantime be sure to check out the blog post from Ryan for more details on FormBuilder v50. Thanks!
New module: ListerProActionLimit
ListerProActionLimit is a brand new third party module developed by Robin Sallis. This module is a small — but very useful — extension for the commercial Lister Pro module and the Lister Selector module: it adds a number input to the actions tab of Lister Pro, enabling one to specify the maximum number of items the action gets applied to.
ListerProActionLimit integrates seamlessly with Lister Pro and Lister Selector, making for an intuitive user interface. A very nice addition — big thanks to Robin Sallis for building this module and sharing it with us!
New module: FieldtypeGeocoder
Fieldtype Geocoder is another brand new module, developed by Neue Rituale GbR. In a nutshell this module takes care of collecting and storing geolocation data from external geocoding services. Behind the scenes this module utilizes the geocoder-php library by William Durand and Tobias Nyholm.
Features provided by this module:
- Fulltext search in formatted Address
- Proximity search
- Search in GeoJSON
- Hookable geocoding providers
- Normalized Geocoder object from geocoder-php
This module has configuration settings for setting the geocoding part up, an admin GUI (inputfield) for managing data, and a very nice API for accessing stored data. Pages with geolocation data can be searched by fulltext search, or specifically by individual keys included in the geolocation data:
$pages->find('geocoder*=Berl'); $pages->find('geocoder.formatted*=Berlin'); $pages->find('geocoder.properties.timezone=Europe/Berlin'); $pages->find('geocoder.properties.locality=Berlin'); $pages->find('geocoder.properties.lat>10');
By default Geocoder expects an OpenCage API key. OpenCage is easy to get started with and has a free trial available so that you can try the service (and this module) out, but you can also (programmatically) switch to another geolocation provider.
Please note that this module is quite fresh, so extra caution is recommended. There are also some slightly atypical installation requirements: module dependencies need to be installed via Composer, and your server needs to have the PHP intl extension installed. Check the Fieldtype Geocoder installation instructions for details.
Big thanks to the folks at Neue Rituale for another amazing contribution — Fieldtype Geocoder looks like a very module useful module!
Site of the week: Rankmühle St. Märgen
Our latest site of the week belong to Rankmühle St. Märgen, a notable landmark that has stood its place at St. Märgen, Black Forest, Germany since 1736. For centuries the Rankmühle has offered day laborers and other less well-off families a simple accommodation option.
The non-profit association Förderverein Rankmühle eV, which has over 120 members, has set itself with the task of renovating and restoring the Rankmühle and presenting the residential building and the mill for the public. For this purpose they are currently asking for donations; more details are available via the website.
The site of the Rankmühle is a one-pager, with plenty of content crammed on such a small space. From the brief history of the Rankmühle and the details of the renovation project to a media gallery with some interesting photos from the past as well as some video material showcasing the renovation work, this site is a full package.
Design wise the site is quite stylish and works splendidly on different screen sizes, so there's a lot to like here. Extra props for the neat parallax effect. The front-end of this site is powered by the Uikit front-end framework, and behind the scenes we could spot at least one popular ProcessWire module: the commercial caching solution ProCache.
Thanks to the folks at designconcepts GmbH for sharing this project with us, and best of luck in their efforts the association behind the Rankmühle renovation project — keep up the great work!
Stay tuned for our next issue
That's all for the 370th issue of ProcessWire Weekly. We'll be back with more news, updates, and content Saturday, 19th of June. As always, ProcessWire newsletter subscribers will get our updates a few days later.
Thanks for staying with us, once again. Hope you've had a great and productive week, and don't forget to check out the ProcessWire forums for more interesting topics. Until next week, happy hacking with ProcessWire!