ProcessWire Weekly #462

In the 462nd issue of ProcessWire Weekly we'll cover the latest core updates, check out a new third party module called Template Access Log, and more. Read on!

Welcome to the latest issue of ProcessWire Weekly! In this issue we're going to check out the latest core updates (ProcessWire 3.0.214), introduce a new third party module called Template Access Log, and as always highlight a new site of the week.

This week our site of the week is the website and portfolio of Jonathan Lahijani, Los Angeles based web developer, and the author of a number of earlier site of the week entries. Keep on reading for more details.

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.214

The latest weekly update from Ryan introduces ProcessWire 3.0.214, our latest development release. Some of the features added in this release have already been covered in our weekly issues, but there are also new additions for this week.

What's new in ProcessWire 3.0.214

Here's a brief summary of what's new in ProcessWire 3.0.214, compared to 3.0.213:

  • New WireNumberTools class with utilities for getting unique numbers and random integers, converting bytes to human-readable string and vice versa, and getting a number formatting property from current locale (e.g. decimal point character, thousands separator, or local or international currency symbol).
  • New $files->size($path) method that returns the size of given file or directory in bytes.
  • New deleteAll() and pruneAll() methods for the WireLog core class.
  • Support for querying pages by repeater field "count" even before there are actually any rows for that field present in the database table.
  • New optional permission page-edit-redirects, used to grant users the permission to add, edit, and/or delete redirects in the page editor.
  • MarkupPagerNav improvements.

Additionally this version contains some bug fixes, resolving GitHub issues #1689, #1697, #1699, and #1703, and also various improvements to core code and code comments.

For more details, as well as some news about an upcoming bot traffic related addition to the commercial ProDevTools module bundle, be sure to check out the latest weekly update from Ryan at the support forum. Thanks!

New module: Template Access Log

Template Access Log is a new third party module that keeps a log of changes made to template access settings: roles and permissions, as well as the useRoles setting ("Do you want to manage view and edit access for pages using this template?")

Current version of the module has no configuration options, and logs all entries to the template_access_log.txt file. Log rows contain details about the template (name and ID), current roles and permissions (grouped as view, edit, add, and create), and a separate list of changes for role-permission pairs.

Logged data is stored as JSON to make programmatic processing easier:

2023-03-18 18:42:05 admin https://example.com/processwire/setup/template/save {"template":"basic-page","template_id":29,"use_roles":1,"permissions":{"view":[37,1061,1062,1125],"edit":[1062],"add":[1061,1062],"create":[]},"permissions_changed":{"edit":[-1061]}}

Future versions of the module may add more features, but especially at the moment this module is primarily intended as an audit log for cases where permission changes may need to be revisited and tracked later, for debugging or other purposes.

If you'd like to give this module a try, you can install it via the built-in modules manager in admin, clone or download it from the Template Access Log GitHub repository, or install it via Composer (composer require teppokoivula/template-access-log).

Site of the week: Jonathan Lahijani, Web Developer

Our latest site of the week belongs to Los Angeles, California based web developer Jonathan Lahijani. We've featured a few of Jonathan's projects in our site of the week section before, so we're thrilled to highlight his own site this week.

Jonathan's specialty are websites, and he builds those for both his own clients and as a developer for hire for creative agencies. You can find more details, including the tech stack that Jonathan prefers — which, not so surprisingly, also includes ProcessWire — from the site. All in all this site feels both professional and friendly, has a splendid design without being over-engineered, and just overall looks and feels like it was designed and built with the customer in mind.

As for behind the scenes details, the front-end of this site is based on the Uikit front-end framework, with dynamic features powered by htmx. As for ProcessWire modules, the ones that we were able to recognize include ProCache and FormBuilder.

Thanks to Jonathan for sharing this project with us — great work, as always. Also big thanks for all the effort you're putting towards the ProcessWire project; keep up the great work!

Stay tuned for our next issue

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