dereuromark/cakephp-bouncer 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

dereuromark/cakephp-bouncer

Composer 安装命令:

composer require dereuromark/cakephp-bouncer

包简介

CakePHP plugin for approval workflow - users propose changes, admins approve or reject before publishing

README 文档

README

Build Status Coverage Status PHPStan Latest Stable Version Minimum PHP Version License Total Downloads Coding Standards

This branch is for CakePHP 5.1+. See version map for details.

Approval workflow for CakePHP: users propose changes, admins/moderators review and approve or reject before the changes hit the live database. Built for content-management systems, user-generated content moderation, data-entry quality control, and multi-stage editorial workflows.

Features

  • Drop-in approval workflow — single behavior on a Table turns saves into pending drafts; original record stays untouched until approved.
  • Admin diff viewer — built-in UI for the queue with side-by-side and inline diffs (word-level via jfcherng/php-diff), filters, status badges, and one-click approve / reject with reasons.
  • 3-way merge — proposals that became stale because the source record changed independently auto-merge non-overlapping edits; real conflicts surface for manual resolution.
  • Draft-safe re-edits — users editing the same record see and update their own pending draft instead of stacking duplicates; auto-supersede keeps the queue focused.
  • Flexible bypass — exempt user lists, custom bypass callbacks, or per-save bypassBouncer flag — integrate with policies, roles, or admin tooling.
  • Pairs with AuditStash — Bouncer logs the approval workflow; cakephp-audit-stash logs the data changes the approvals apply.
  • Transaction-safe — atomic apply on approval; failures roll back cleanly and leave the queue intact.

Installation

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

Then add the behavior to any Table that should require approval — see the Getting Started guide.

Reverts are out of scope. Bouncer is the gate before changes ship. To roll a record back after it shipped, use AuditStash's Revert / Restore feature.

Documentation

Full docs: https://dereuromark.github.io/cakephp-bouncer/

  • Getting Started — installation, behavior setup, controller wiring
  • Configuration — behavior options and Bouncer.* app config
  • Usage — controller patterns, draft re-edit, programmatic approval
  • View Helper — render proposals in your own templates
  • Features overview — admin UI, approval workflow, 3-way merge, advanced patterns, AuditStash integration

Demo

https://sandbox.dereuromark.de/sandbox/bouncer-examples

Contributing

See CONTRIBUTING.md.

统计信息

  • 总下载量: 4.53k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 4
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-11-16

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固