Skip to content

dereuromark/cakephp-bouncer

Repository files navigation

Bouncer Plugin For CakePHP

Build Status Minimum PHP Version License

This plugin implements an approval workflow for CakePHP applications. Users propose changes (create or edit records), and admins/moderators can review, approve, or reject those changes before they are published to the actual database tables.

Perfect for:

  • Content management systems requiring editorial approval
  • User-generated content that needs moderation
  • Data entry systems with quality control
  • Multi-stage approval workflows

Note: Revert functionality is intentionally out of scope for this plugin. For reverting changes to previous states, use the cakephp-audit-stash plugin which provides comprehensive audit logging and revert capabilities. Bouncer focuses solely on the approval workflow for proposed changes.

Features

  • Seamless Integration: Add approval workflow to any table with a single behavior
  • Draft Management: Users automatically edit their existing drafts instead of creating duplicates
  • Admin Interface: Built-in UI for reviewing and approving/rejecting changes with diff view
  • Flexible Configuration: Configure which actions require approval, use custom bypass callbacks
  • Transaction Safety: Atomic approval process with rollback on errors
  • AuditStash Integration: Works seamlessly with cakephp-audit-stash for complete audit trail

Installation

Install via composer:

composer require dereuromark/cakephp-bouncer
bin/cake plugin load Bouncer

Run the migrations to create the `bouncer_records` table:

bin/cake migrations migrate -p Bouncer

Documentation

See docs/README.md for detailed documentation including:

  • Quick start guide
  • Configuration options
  • Advanced usage (bypass callbacks, programmatic approval)
  • AuditStash integration
  • How it works

Demo

See the plugin in action: https://sandbox.dereuromark.de/sandbox/bouncer-examples

Contributing

See CONTRIBUTING.md for details on how to contribute to this project.

About

Flexible and rock solid gate keeping for CakePHP, moderate/approve changes.

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages