ProcessWire Weekly #407

In the 407th issue of ProcessWire Weekly we'll introduce the latest core updates, check out a new module called ICS Generator, and more. Read on!

Welcome to the latest issue of ProcessWire Weekly. In this week's issue we'll take a closer look at the latest development version of ProcessWire, 3.0.195. Last week there were no core updates to share, so we're glad to be back on track in this area as well.

In other news we'll also introduce a brand new third party module called ICS Generator, developed by Timo Hausmann. As always we'll also choose and highlight a new site of the week, this week belonging to a London based company called RightIndem.

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. Enjoy our latest issue and have a great weekend!

Latest core updates: ProcessWire 3.0.195

There were no new core updates to report last week, but we're now back on track, and in his latest weekly update at the support forum Ryan shares some details about the current development version of ProcessWire (3.0.195) now available via GitHub.

What's new in the core this week?

This version further improves lazy loading of fields, templates and fieldgroups, resolves some issues reported via GitHub, and adds a new feature to the bundled site-blank site profile. Here's a summarized list of what's new or changed this week:

  • The site-blank site profile, bundled with the core package, now has custom Page classes feature enabled by default, and also includes a blank template for the Home template custom Page class.
  • Updates for WireCache and Field/Fields core classes to avoid loading fields and templates unnecessarily, further improving performance of lazy loading.
  • Fix for an issue where Templates::getAll() was only returning templates already in memory when lazy loading of templates was enabled.
  • Fix for an issue where (since a few dev versions back) $pages->findMany( ) was considerably slower than it should've been.
  • Fix for another new issue, where non-superusers were unable to create pages from within a Page reference field.
  • The ProcessLanguage::processCSV() method was made hookable based on an earlier user request.

Brief update regarding PHP 8.1 compatibility

In addition to the updates mentioned above, ProcessWire 3.0.195 resolves some PHP 8.1 deprecation warnings. In case anyone is still wondering if it's safe to run ProcessWire on latest version(s) of PHP, the short answer is yes — but you should probably update your site to the latest development version to avoid unnecessary notices.

Some notices/warnings may still show up, even in the latest versions. Known instances of these are currently tracked via GitHub issue #1467. If you do come across one that is not yet reported, please let us know (via aforementioned issue, or via a new issue).

That's all for our core updates section this week. For more details be sure to also check out the weekly update from Ryan at the support forum. Thanks!

New module: ICS Generator

ICS Generator is a brand new third party module developed by Timo Hausmann. This module generates strings and files formatted according to the iCalendar specification, which is commonly used to store and share calendaring and scheduling information — events, to-dos, journal entries, and so on.

ICS Generator provides a simple Wire-derived API for programmatic use:

// get the ICS Generator module
$ics = $modules->get('IcsGenerator');

// set properties of the ICS string/file
$ics->set('date', 'now');
$ics->set('dateEnd', 'now + 60 minutes');
$ics->set('summary', 'ICS Calendar File');
$ics->set('description', 'Description text');
$ics->set('location', 'Location information');
$ics->set('url', 'https://www.processwire.com');
$ics->set('timezone', new \DateTimeZone(date_default_timezone_get()));

// get the ICS string
$string = $ics->getString();

// get the path of the temporary ICS file
$path = $ics->getFile();

There are a few other options as well, and multiple values can be set at once using the setArray() method, so be sure to check out the ICS Generator GitHub repository for more details. This module can currently be downloaded or cloned from the GitHub repository, and should also be available via the built-in modules installer soon.

Big thanks to Timo for developing this very useful module and sharing it with us!

Site of the week: RightIndem

Our latest site of the week belongs to RightIndem, which is a London, UK based company offering a configurable and white-labelled solution for digital claims, suitable for any line of business.

The digital claim platform offered by RightIndem is proven, award-winning, and well integrated product with an easy to use, conversational user interface for end users — and it's available on any device 24/7.

The website of RightIndem introduces the company's team, products, and partners, as well as provides insights via a combined news and blog section, and also includes a dedicated section for open careers at RightIndem. The design of the site is clean and modern, with some very nice graphics, quality images, and icons livening things up.

As for behind the scenes details, the front-end of this site is based on the Bootstrap front-end framework. Additional transition and animation effects are powered by the Animate On Scroll library, but since there are no third party ProcessWire modules visible on the public-facing site, there's not much else we can say here — apart, of course, from the fact that the site works nicely and feels quite performant as well.

Big thanks to the folks at ID Studio Web Agency for sharing this project with us, and our congratulations to the client, RightIndem, for their new ProcessWire powered website — that's one splendid site you've got there!

Stay tuned for our next issue

That's all for the 407th issue of ProcessWire Weekly. We'll be back with more news, updates, and content Saturday, 5th of March. 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!

Post a comment