2014-08-04, 01:37 PM
Plugin in question:
http://mods.mybb.com/view/undo-delete
Issue:
when checking things things
/adminurl/index.php?module=tools-undodelete
everything is fine
when I click Posts or anything I get this error
Fatal error: Class 'Horde_Text_Diff_Renderer' not found in [forumdirectory]/inc/3rdparty/diff/Diff/Renderer/inline.php on line 23
So I checked the inline.php
Line 22: class Horde_Text_Diff_Renderer_Inline extends Horde_Text_Diff_Renderer
Line 23: {
Okay I fixed the problem pretty quick.
in the plugin file find:
replaced with
http://mods.mybb.com/view/undo-delete
Issue:
when checking things things
/adminurl/index.php?module=tools-undodelete
everything is fine
when I click Posts or anything I get this error
Fatal error: Class 'Horde_Text_Diff_Renderer' not found in [forumdirectory]/inc/3rdparty/diff/Diff/Renderer/inline.php on line 23
So I checked the inline.php
Line 22: class Horde_Text_Diff_Renderer_Inline extends Horde_Text_Diff_Renderer
Line 23: {
Okay I fixed the problem pretty quick.
in the plugin file find:
function undodelete_compare_table($table)
{
global $db,$lang;
undodelete_lang();
require_once MYBB_ROOT.'inc/3rdparty/diff/Diff.php';
require_once MYBB_ROOT.'inc/3rdparty/diff/Diff/Renderer/inline.php';
$create_backup=$db->show_create_table(BACKUPTABLE_PREFIX.$table);
$create_backup=preg_replace('#AUTO_INCREMENT=([0-9]+) #Usi','',$create_backup);
$create=$db->show_create_table($table);
$create=str_replace(TABLE_PREFIX.$table,TABLE_PREFIX.BACKUPTABLE_PREFIX.$table,$create);
$create=preg_replace('#AUTO_INCREMENT=([0-9]+) #Usi','',$create);
$create_backup=explode("\n",$create_backup);
$create=explode("\n",$create);
$diff=new Horde_Text_Diff('auto',array($create_backup,$create));
$renderer=new Horde_Text_Diff_Renderer_inline();
$itable=new Table;
$itable->construct_cell('<pre>'.$renderer->render($diff).'</pre>');
$itable->construct_row();
$itable->output($lang->sprintf($lang->undodelete_update_table,TABLE_PREFIX.BACKUPTABLE_PREFIX.$table));
}
replaced with
function undodelete_compare_table($table)
{
global $db,$lang;
undodelete_lang();
require_once MYBB_ROOT.'inc/3rdparty/diff/Diff.php';
require_once MYBB_ROOT.'inc/3rdparty/diff/Diff/Renderer.php';
require_once MYBB_ROOT.'inc/3rdparty/diff/Diff/Renderer/Inline.php';
$create_backup=$db->show_create_table(BACKUPTABLE_PREFIX.$table);
$create_backup=preg_replace('#AUTO_INCREMENT=([0-9]+) #Usi','',$create_backup);
$create=$db->show_create_table($table);
$create=str_replace(TABLE_PREFIX.$table,TABLE_PREFIX.BACKUPTABLE_PREFIX.$table,$create);
$create=preg_replace('#AUTO_INCREMENT=([0-9]+) #Usi','',$create);
$create_backup=explode("\n",$create_backup);
$create=explode("\n",$create);
$diff=&new Horde_Text_Diff('auto',array($create_backup,$create));
$renderer=&new Horde_Text_Diff_Renderer_inline();
$itable=new Table;
$itable->construct_cell('<pre>'.$renderer->render($diff).'</pre>');
$itable->construct_row();
$itable->output($lang->sprintf($lang->undodelete_update_table,TABLE_PREFIX.BACKUPTABLE_PREFIX.$table));
}