About Changelog

This module tracks changes, additions, removals etc. of public (as in "not under admin") pages of your site.

Category 1Logs/Monitoring
Modules that maintain activity logs or monitor and report activity in some form or another.
Category 2Process Modules
Process modules are apps that run in the ProcessWire admin.
Release StateStable
Should be safe for use in production environments. *
Authorteppo
Module Version1.5.4
Class NameProcessChangelog
Compatibility2.2, 2.3, 2.4, 2.5, 2.6, 2.7, 3.0
Date AddedFebruary 2, 2013
Last UpdatedAugust 10, 2017
Recommended ByNew recommendations may take up to 1 day to appear.

Details

This module keeps track of changes (edits, additions, removals etc.) on your site. It is not intended as a version control solution; rather than that, it's primary goal is to provide admin users with quick overview of changes.

For more details please see README.md.

Instructions

Installing

Copy ProcessChangelog folder to your /site/modules/, go to Admin > Modules, hit "Check for new modules" and install Process Changelog. Process Changelog Hooks module will be installed automatically with Process Changelog.

Note: this module requires ProcessWire 2.2 or newer. Automatic cleanup feature requires LazyCron module, which is included in ProcessWire core distribution. Automatic cleanup isn't required for this module to work but it's highly recommended to avoid cluttering custom database table used by Process Changelog with unnecessary / unwanted old rows.

How to use

During install a new Changelog page is created, placed by default under Admin > Settings. From there you'll find information about each change on public pages since this module was installed. Clicking more link at the end of each row reveals more information about that particular change.

Settings

This module provides various settings you should be aware of. Please see README.md for details.

README

{:"aria-hidden"=>"true", :class=>"octicon octicon-link"}Process Changelog Module

Changelog module for ProcessWire CMS/CMF.Copyright (c) 2013-2017 Teppo Koivula

This module keeps track of changes (edits, additions, removals etc.) on yourProcessWire site. It is not intended as a version control solution: for that purpose there are other modules. The goal of this module is to provide admin users with a quick overview of sitewide changes.

{:"aria-hidden"=>"true", :class=>"octicon octicon-link"}Requirements

The master branch of this module requires ProcessWire 2.3.1+. If you're runningan earlier version of ProcessWire you probably should consider updating it, but if that's not an option, please check out the legacy branch instead:

https://github.com/teppokoivula/ProcessChangelog/tree/legacy

Automatic cleanup (which is recommended) requires that you install the LazyCronmodule. While said modue is bundled with the core package, it is not installed by default. Without automatic cleanup your database can eventually become slow as more and more changelog data gets stored in it.

{:"aria-hidden"=>"true", :class=>"octicon octicon-link"}Installing

This module is installed just like any other ProcessWire module: copy or clonethe directory containing this module to your /site/modules/ directory, log in, go to Admin > Modules, click "Check for new modules", and install "Changelog".

Process Changelog Hooks will be automatically installed with the main module,Process Changelog. Installing Process Changelog RSS is completely optional: if installed, it provides you with a publicly viewable RSS feed of the changes to your site. More details under heading "Changelog RSS feed".

{:"aria-hidden"=>"true", :class=>"octicon octicon-link"}How to use

When you install this module, it creates a new page into the Admin calledChangelog (Settings > Changelog). This page contains a list of changes to pages on the site since the moment this module was installed. By clicking the more link next to each row reveals more information about thatparticular change.

In order to access the Changelog page, users need to a) be authenticated andb) have a role with the "changelog" permission or have the superuser role.While the changelog permission will be added automatically when this module is installed, it needs to be given to any applicable roles manually.

{:"aria-hidden"=>"true", :class=>"octicon octicon-link"}Changelog RSS feed

This module provides two types of RSS feeds: one that can be accessed only byauthenticated users via the Changelog page (/setup/changelog/rss/), and other which can be enabled by installing the optional Process Changelog RSS module, typing in a key to it's config settings, and accessing the feed via URL such as this: http://example.com/process-changelog-rss.xml?key=1234567890.

Since the latter feed can be accessed via a public URL, please make sure thatyour key is as difficult to guess as possible (and never use key 1234567890). If you are unsure about whether you really need this feature, please leave the Process Changelog RSS module uninstalled.

{:"aria-hidden"=>"true", :class=>"octicon octicon-link"}Settings

This module contains a bunch of settings you should be aware of. Settings canbe defined via ProcessWire's native module configuration screen, and each of the bundled module's has it's own settings.

{:"aria-hidden"=>"true", :class=>"octicon octicon-link"}Process Changelog

Date Format

Row Limit

  • Defines number of rows visible at once on Changelog page
  • Default: 25

Row Label

  • Defines which field will be used as row label (page identifier) onChangelog page
  • Default: Page name

Visible filters

  • Defines which filters are visible on the Changelog page
  • Default: operation, username, when, date_range

Values for hidden filters

  • Defines values used for filters that are not currently visible
  • Default: operation=all, flags=any, when=whenever

{:"aria-hidden"=>"true", :class=>"octicon octicon-link"}Process Changelog Hooks

Operations

  • Defines which operations to keep track of / which should be ignored.
  • Default: all available operations

Ignored templates

  • Defines which (if any) templates should be completely ignored from the log.
  • Default: none

Ignored fields

  • Defines which (if any) fields should be completely ignored from the log.
  • Default: none

Caller logging

  • Defines whether path/URL for script that triggered action should be stored.
  • Default: disabled

Data max age

  • Defines how long collected data is kept before being removed automatically.Please note that automatic cleanup requires LazyCron module!
  • Default: forever (no automatic cleanup)

Add Changelog to the page editor

  • Defines whether a Changelog section should be added to the Settings tab of thepage editor. Can be enabled for everyone, users with the Changelog permission, or superusers only. Note that this may affect the performance of page editor.
  • Default: add for everyone

{:"aria-hidden"=>"true", :class=>"octicon octicon-link"}Process Changelog RSS

Key

  • Key required to view the public changelog RSS feed; if omitted, the feed won'tbe available. Please note that the key has to be at least 10 characters long.
  • Default: null (feed not available)

{:"aria-hidden"=>"true", :class=>"octicon octicon-link"}Roadmap

These are new features, fixes and improvements to current feature set plannedfor later releases:

1.x

  • usage statistics, possibly even graphs

{:"aria-hidden"=>"true", :class=>"octicon octicon-link"}Icons

Icons used by this module are part of Gnome Project and licensed under GNUGPL v2 (http://www.gnu.org/licenses/gpl-2.0.html). Visit http://gnome.org or http://art.gnome.org/themes/icon for more information.

{:"aria-hidden"=>"true", :class=>"octicon octicon-link"}License

This program is free software; you can redistribute it and/ormodify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public Licensealong with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

(See included LICENSE file for full license text.)

Comments

  • Jonathan Lahijani

    Jonathan Lahijani 3 years ago 00

    Why not enable system templates, particularly the User template?

    • Teppo

      Teppo 3 years ago 00

      Actually actions on system templates are already logged. You might want to check the settings of ProcessChangelog module. This might be an issue with visibility settings: if field "flags" is hidden, visibility settings define a default value for it, and if that's set to "without system flag", pages with system templates won't be visible in the changelog.

      If it's something else and/or this doesn't seem to work for you, please post about this at the support thread, or open an issue at GitHub. Thanks!

Post a Comment

Your e-mail is kept confidential and not included with your comment. Website is optional.