OK, let's fix your problem with the nice way... personally, I would prefer the hard way, because I will have less to write, but I am in good mood today, so let's go...
1. make a copy from your
smarty_internal_method_registerplugin.php and name it
smarty_internal_method_registerplugin_ORIGINAL.php
2. open the
smarty_internal_method_registerplugin.php with Notepad++ and at the end you will see this code
Code:
public function registerPlugin(
Smarty_Internal_TemplateBase $obj,
$type,
$name,
$callback,
$cacheable = true,
$cache_attr = null
) {
$smarty = $obj->_getSmartyObj();
if (isset($smarty->registered_plugins[ $type ][ $name ]))
{
/** throw new SmartyException*/("Plugin tag '{$name}' already registered");
}
elseif (!is_callable($callback)) {
/** throw new SmartyException */ ("Plugin '{$name}' not callable");
} else {
$smarty->registered_plugins[ $type ][ $name ] = array($callback, (bool)$cacheable, (array)$cache_attr);
}
return $obj;
}
}
3. copy the code below and paste it in your file to replace all the block
Code:
/**
public function registerPlugin(
Smarty_Internal_TemplateBase $obj,
$type,
$name,
$callback,
$cacheable = true,
$cache_attr = null
) * Registers plugin to be used in templates *{
$smarty = $obj->_getSmartyObj();
if (isset($smarty->registered_plugins[ $type ][ $name ])) {
throw new SmartyException("Plugin tag '{$name}' already registered");
} elseif (!is_callable($callback)) {
throw new SmartyException("Plugin '{$name}' not callable");
} else {
$smarty->registered_plugins[ $type ][ $name ] = array($callback, (bool)$cacheable, (array)$cache_attr);
}
return $obj;
}*/
}
4. pronounce the magic formula twice... in the case if you don't remember it, save your file and clear the Prestashop cache, that's will work too.
Now you can access to your BO (feel better, isn't?
) and uninstall your module "properly" via Prestashop
5. when it's done, rename the two files:
- smarty_internal_method_registerplugin.php by smarty_internal_method_registerplugin_TWEAKED.php
- smarty_internal_method_registerplugin_ORIGINAL.php by
Note: on this way, if the problem happend again, you just switch the name from the files to access in your BO, and uninstall the module properly.
If you need install the module again, feel free to do it, because it's a good one