I had looked over those after I had started working on my conversion but didn't end up using any of the code. Mine is more efficient, does more error checking, keeps better track of edit info (editor, time, and count which the board doesn't update on every edit), has more permissions (local and global moderator, and local forum) for better control (of who can see, change, and delete edits), allows deletion of multiple revisions at a time, will show comparisons between the edits when hitting a button, allows you to add/change the edit reason when restoring a post, allows you to turn it on and off for each forum, and has cron job that can auto-prune old posts.
I had not downloaded or looked over that extension. If anyone has, what features does it have that you would like?Tarantino wrote: ↑Thu May 03, 2018 11:54 am The question should be, will it be better then this one?
https://www.phpbb.com/customise/db/exte ... dit_log_2/
Code: Select all
'add_columns' => array(
FORUMS_TABLE => array(
'primepostrev_enable' => array('BOOL', 1),
'primepostrev_autoprune' => array('UINT:8', 0),
),
Interesting idea, but for now I'd like to get it tested and make sure everything is working before adding such a feature.
Code: Select all
<?php
/**
*
* prime_post_revisions [Dutch]
*
* @copyright (c) 2018 Ken F. Innes IV <https://www.absoluteanime.com>
* @license GNU General Public License, version 2 (GPL-2.0)
*
*/
/**
* DO NOT CHANGE
*/
if (!defined('IN_PHPBB'))
{
exit;
}
if (empty($lang) || !is_array($lang))
{
$lang = array();
}
// DEVELOPERS PLEASE NOTE
//
// All language files should use UTF-8 as their encoding and the files must not contain a BOM.
//
// Placeholders can now contain order information, e.g. instead of
// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows
// translators to re-order the output of data while ensuring it remains correct
//
// You do not need this where single placeholders are used, e.g. 'Message %d' is fine
// equally where a string contains only two placeholders which are used to wrap text
// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine
//
// Some characters you may want to copy&paste:
// ’ » “ ” …
//
$lang = array_merge($lang, array(
// Viewing posts
'PRIMEPOSTREVISIONS_VIEW' => 'Bekijk berichten geschiedenis.', // Text for the link to view the revision history
// Viewing revisions
'PRIMEPOSTREVISIONS_VIEWING' => 'Bekijkt berichten geschiedenis',
'PRIMEPOSTREVISIONS_VIEWING_EXPLAIN' => 'Op deze pagina vindt u alle versies van de post, te beginnen met de meest recente versie.',
'PRIMEPOSTREVISIONS_TITLE' => 'Bekijkt berichten geschiedenis',
'PRIMEPOSTREVISIONS_FIRST' => 'Origineel bericht',
'PRIMEPOSTREVISIONS_FINAL' => 'Huidig bericht',
'PRIMEPOSTREVISIONS_COUNT' => 'Revisie %d',
#'PRIMEPOSTREVISIONS_INFO' => 'Aangepast door %1$s op %2$s.',
'PRIMEPOSTREVISIONS_EDIT_BY' => 'Aangepast door',
'PRIMEPOSTREVISIONS_NO_SUBJECT' => '[geen onderwerp]',
'PRIMEPOSTREVISIONS_COMPARE' => 'Vergelijk',
'PRIMEPOSTREVISIONS_VIEW_DENIED' => 'U mist de nodige rechten om deze post revisies te bekijken.',
// Delete a revision
'PRIMEPOSTREVISIONS_DELETE' => 'Verwijder revisie',
'PRIMEPOSTREVISIONS_DELETE_CONFIRM' => 'Weet u zeker dat u deze revisie wilt verwijderen? ',
'PRIMEPOSTREVISIONS_DELETE_DENIED' => 'Je hebt je beschikt niet over voldoende permissies om deze revisie te verwijderen.',
'PRIMEPOSTREVISIONS_DELETE_FAILED' => 'Er is een fout opgetreden bij het verwijderen van de revisie.',
'PRIMEPOSTREVISIONS_DELETE_SUCCESS' => 'De revisie is met succes verwijderd!.',
'PRIMEPOSTREVISIONS_DELETE_INVALID' => 'Geen revisie berichten geselecteerd om te verwijderen.',
// Delete all revisions
'PRIMEPOSTREVISIONS_DELETES' => 'Verwijder geselecteerde revisie',
'PRIMEPOSTREVISIONS_DELETES_CONFIRM' => 'Weet u zeker dat u deze revisie wilt verwijderen? ',
'PRIMEPOSTREVISIONS_DELETES_DENIED' => 'Je hebt je beschikt niet over voldoende permissies om deze revisie te verwijderen.',
'PRIMEPOSTREVISIONS_DELETES_FAILED' => 'Er is een fout opgetreden bij het verwijderen van de revisie.',
'PRIMEPOSTREVISIONS_DELETES_SUCCESS' => 'De revisie is met succes verwijderd!.',
'PRIMEPOSTREVISIONS_DELETES_INVALID' => 'Geen revisie berichten geselecteerd om te verwijderen.',
// Restore a revision
'PRIMEPOSTREVISIONS_RESTORE' => 'Revisie herstellen',
'PRIMEPOSTREVISIONS_RESTORE_CONFIRM' => 'Weet je zeker dat je deze revisie wilt herstellen?',
'PRIMEPOSTREVISIONS_RESTORE_DENIED' => 'U mist de nodige rechten om deze revisie te herstellen.',
'PRIMEPOSTREVISIONS_RESTORE_FAILED' => 'Er is een fout opgetreden bij een poging de revisie te herstellen.',
'PRIMEPOSTREVISIONS_RESTORE_SUCCESS' => 'Het bericht is succesvol hersteld.',
));
Code: Select all
<?php
/**
*
* prime_post_revisions [French]
*
* @copyright (c) 2018 Ken F. Innes IV <https://www.absoluteanime.com>
* @license GNU General Public License, version 2 (GPL-2.0)
*
*/
/**
* DO NOT CHANGE
*/
if (!defined('IN_PHPBB'))
{
exit;
}
if (empty($lang) || !is_array($lang))
{
$lang = array();
}
// DEVELOPERS PLEASE NOTE
//
// All language files should use UTF-8 as their encoding and the files must not contain a BOM.
//
// Placeholders can now contain order information, e.g. instead of
// 'Page %s of %s' you can (and should) write 'Page %1$s of %2$s', this allows
// translators to re-order the output of data while ensuring it remains correct
//
// You do not need this where single placeholders are used, e.g. 'Message %d' is fine
// equally where a string contains only two placeholders which are used to wrap text
// in a url you again do not need to specify an order e.g., 'Click %sHERE%s' is fine
//
// Some characters you may want to copy&paste:
// ’ » “ ” …
//
$lang = array_merge($lang, array(
// Viewing posts
'PRIMEPOSTREVISIONS_VIEW' => 'Voir l’historique.', // Text for the link to view the revision history
// Viewing revisions
'PRIMEPOSTREVISIONS_VIEWING' => 'Voir l’historique des éditions',
'PRIMEPOSTREVISIONS_VIEWING_EXPLAIN' => 'Cette page permet de consulter l’historique des éditions.',
'PRIMEPOSTREVISIONS_TITLE' => 'Historique éditions',
'PRIMEPOSTREVISIONS_FIRST' => 'Message initial',
'PRIMEPOSTREVISIONS_FINAL' => 'Dernière édition',
'PRIMEPOSTREVISIONS_COUNT' => 'Édition %d',
#'PRIMEPOSTREVISIONS_INFO' => 'Édité par %1$s le %2$s.',
'PRIMEPOSTREVISIONS_EDIT_BY' => 'Édité par',
'PRIMEPOSTREVISIONS_NO_SUBJECT' => '[sans sujet]',
'PRIMEPOSTREVISIONS_COMPARE' => 'Comparer',
'PRIMEPOSTREVISIONS_VIEW_DENIED' => 'Vous ne disposez pas des autorisations nécessaires pour afficher ces révisions post.',
// Delete a revision
'PRIMEPOSTREVISIONS_DELETE' => 'Effacer édition',
'PRIMEPOSTREVISIONS_DELETE_CONFIRM' => 'Êtes vous sur de vouloir supprimer cette édition ?',
'PRIMEPOSTREVISIONS_DELETE_DENIED' => 'Vous n’avez pas les permissions nécessaires pour supprimer une édition.',
'PRIMEPOSTREVISIONS_DELETE_FAILED' => 'Une erreur est apparue pendant la suppression de l’édition.',
'PRIMEPOSTREVISIONS_DELETE_SUCCESS' => 'Cette édition à été supprimée avec succès.',
'PRIMEPOSTREVISIONS_DELETE_INVALID' => 'Aucune édition n’a été sélectionnée pour être supprimée.',
// Delete all revisions
'PRIMEPOSTREVISIONS_DELETES' => 'Effacer les éditions sélectionnées',
'PRIMEPOSTREVISIONS_DELETES_CONFIRM' => 'Êtes vous sur de vouloir supprimer ces éditions ?',
'PRIMEPOSTREVISIONS_DELETES_DENIED' => 'Vous n’avez pas les permissions nécessaires pour supprimer ces éditions.',
'PRIMEPOSTREVISIONS_DELETES_FAILED' => 'Une erreur est apparue pendant la suppression des éditions.',
'PRIMEPOSTREVISIONS_DELETES_SUCCESS' => 'Ces éditions ont été supprimées avec succès.',
'PRIMEPOSTREVISIONS_DELETES_INVALID' => 'Aucune édition n’a été sélectionnée pour être supprimée.',
// Restore a revision
'PRIMEPOSTREVISIONS_RESTORE' => 'Restaurer la révision',
'PRIMEPOSTREVISIONS_RESTORE_CONFIRM' => 'Êtes-vous sûr de vouloir restaurer cette révision?',
'PRIMEPOSTREVISIONS_RESTORE_DENIED' => 'Vous n’avez pas les autorisations nécessaires pour restaurer cette révision.',
'PRIMEPOSTREVISIONS_RESTORE_FAILED' => 'Une erreur s’est produite lors de la tentative de restauration de la révision.',
'PRIMEPOSTREVISIONS_RESTORE_SUCCESS' => 'Le message a été restauré avec succès.',
));
Code: Select all
General Error
SQL ERROR [ mysqli ]
Data too long for column 'post_text' at row 1 [1406]
SQL
INSERT INTO phpbb3_primepostrev (revision_time, post_id, post_subject, post_text, bbcode_uid, bbcode_bitfield, post_edit_time, post_edit_reason, post_edit_user, post_edit_count, primepost_edit_time, primepost_edit_user, primepost_edit_count) VALUES (....
Code: Select all
General Error
SQL ERROR [ mysqli ]
Duplicate entry '0' for key 'PRIMARY' [1062]
SQL
INSERT INTO phpbb3_primepostrev (revision_time, post_id, post_subject, post_text, bbcode_uid, bbcode_bitfield, post_edit_time, post_edit_reason, post_edit_user, post_edit_count, primepost_edit_time, primepost_edit_user, primepost_edit_count) VALUES (......