Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 12/17/2025 in all areas

  1. Hi everyone, I wanted to share a small utility module I’ve put together to help keep the /site/modules/ directory tidy. What it does: When updating modules ProcessWire renames old module directories by prepending a dot (e.g., .ModuleName). Over time, these "hidden" backup folders can clutter your file system. ProcessModuleCleaner identifies these orphaned directories and allows you to delete them directly from the admin interface. Key Features: Automatic Detection: Scans your site modules folder for any directory starting with a dot. Native UI: Built specifically for the ProcessWire backend using UIkit 3 classes for a seamless look. Interactive Selection: Uses AlpineJS for a fast and responsive "select all" and delete workflow. Safe Deletion: Uses ProcessWire's WireFileTools for reliable recursive directory removal. How to use: Install the module. Navigate to Setup > Module Cleaner. Review the list of found folders. Select the ones you want to remove and click "Delete". Screenshot / UI: The module displays a clean table with the folder name and the last modified date, so you know exactly how old those backups are. GitHub: https://github.com/markusthomas/ProcessModuleCleaner Module Directory: https://processwire.com/modules/process-module-cleaner/ I hope some of you find this helpful for keeping your production or development environments clean! Feedback is always welcome. Cheers!
    5 points
  2. If you didn't want to build your own Process module then this sounds like something that @diogo's ProcessAdminCustomPages would be suitable for. Once you'd created a template you could just grab the log entries and loop through them to output them in a table or something fancier. In a similar vein, @kongondo's RuntimeMarkup field can be use to show that kind of info on an editable page. I sometimes have a tab on a page template that just lists log type data in a tab so that an editor can see it.
    1 point
  3. Totally valid. However to address this they added an option in 3.2.0 so that when updating, you don't get bleeding edge packages, but instead it's lagged by 1 month: https://github.com/basecamp/omarchy/releases/tag/v3.2.0 So that's comforting. Similarly, I use ProcessWire bleeding edge / dev branch, but if there have been changes in a particular week that I sense as more in-depth, especially those that touch selectors and database stuff, I usually wait another week or two to avoid potential subtle issues that are difficult to catch. I'd imagine I would use the same judgement with Omarchy.
    1 point
  4. @Jonathan Lahijani Congrats 👏 I heard about Omarchy, curious to hear your thoughts so come back and share more when you've driven it for a few miles. I really like Gnome's super key then type to search feature. It keeps my hands off the mouse and is much faster once you get used to it rather than a task bar or dock. I don't even have icons on my desktop, really is a nice workflow. It's great getting everything set up with shortcuts. I use my mouse so much less since I switched and it really speeds things up not having to touch the mouse.
    1 point
  5. I've settled on Omarchy! I spent a couple days getting used to Hyprland and tweaking it to my needs. It's a bit of a mind shift not having a taskbar/dock anymore, but I made it nice and easy to switch workspaces very quickly and do some basic window manipulations. It's nice having a Windows VM set up as well (I need Photoshop for work since I work with printing companies; CMYK support is a must). It's time to say goodbye to Windows!
    1 point
  6. I can give you a simple example how to use the options array. In this example you would get all log entries for your log file that have been stored today. $entries = $log->getEntries("simplecontactform-log", ["dateFrom" => "2022-06-14 00:00", "dateTo" => "2022-06-14 23:59:59"]); foreach($entries as $entry){ //get log entry text, you can also get date, user and url $text = $entry["text"]; }
    1 point
  7. why u.use add.whens you no take result u.try this? $u = wire('users')->add('testuser1'); $u->pass = 'test123'; $u->addRole('superuser'); $u->save(); or.this $u = new User(); $u->name = 'testuser1'; $u->pass = 'test123'; $u->save();
    1 point
×
×
  • Create New...