the-turk / flarum-diff
View post edit histories.
Installs: 6 549
Dependents: 0
Suggesters: 0
Security: 0
Stars: 8
Watchers: 3
Forks: 6
Open Issues: 5
Type:flarum-extension
Requires
- ext-json: *
- flarum/core: ^1.2.0
- jfcherng/php-diff: ^6.11.6
Suggests
- the-turk/flarum-quiet-edits: Recommended if you want to save storage volume
This package is auto-updated.
Last update: 2024-10-28 19:05:49 UTC
README
This extension adds a "post revision history" feature to your Flarum forum.
Screenshots:
Features
- Based on jfcherng/php-diff repository (this one is forked from chrisboulton/php-diff since it's no longer maintained).
- Option for line (default), word and char level diffs.
- Three render modes including "Inline", "Side By Side" & "Combined".
- Archive old revisions using cron jobs or manually.
- Delete revisions or rollback to certain revision.
- Supports
fof/nightmode
,the-turk/flarum-quiet-edits
. - Supports all browsers which are supporting css-grid.
Also, it won't load (and cache) anything until you click the "Edited" button so no need to worry about loading times.
Requirements
You can check your php version by running php -v
and check if iconv
is installed by running php --ri iconv
(which should display iconv support => enabled
).
Installation
composer require the-turk/flarum-diff
Updating
composer update the-turk/flarum-diff php flarum migrate php flarum cache:clear
Usage
Enable the extension and set the permissions. You're ready to go!
Archive Old Revisions
If x ≥ A (where the x is post's revision count), first y=mx+b revisions for the post can be stored as merged & compressed BLOB
in a new table (which is called post_edit_histories_archive
). Specify the A, m and b from the settings modal. Float values of y will be rounded to the next lowest integer value. It's recommended to archive old revisions if you want to save storage volume but not recommended if you don't want to.
If you want to archive old revisions, please consider enabling cron job option from the settings modal. I set a weekly cron job which is working on sundays at 02:00 AM (nothing special) using diff:archive
command**. Otherwise, it'll try to find & archive old revisions for the post as soon as Post\Revised
event fires or wait for your php flarum diff:archive
command. See this discussion for setting up the scheduler.