...
Code Block |
---|
public function __construct() { $this->name = 'testmodule'; $this->tab = 'other'; $this->version = '0.1'; $this->author = 'Firstname Lastname'; $this->need_instance = 0; parent::__construct(); $this->displayName = $this->l('Test module'); $this->description = $this->l('This is a test module'); $this->confirmUninstall = $this->l('Warning: all the data saved in your database will be deleted. Are you sure you want uninstall this module?'); /* Backward compatibility */ if (_PS_VERSION_ < '1.5') { $this->backward_error = $this->l('In order to work properly in PrestaShop v1.4, the Test module requiers the backward compatibility module at least v0.3.').'<br />'. $this->l('You can download this module for free here: http://addons.prestashop.com/en/modules-prestashop/6222-backwardcompatibility.html'); if (file_exists(_PS_MODULE_DIR_.'backwardcompatibility/backward_compatibility/backward.php')) { include(_PS_MODULE_DIR_.'backwardcompatibility/backward_compatibility/backward.php'); $this->backward = true; } else $this->warning = $this->backward_error; } else $this->backward = true; } |
Once this is in place, you can call $this->backward and $this->backward_error in your module in order to pinpoint 1.5- or 1.4-specific code:
Code Block |
---|
public function install()
{
if (!$this->backward && _PS_VERSION_ < 1.5)
{
echo '<div class="error">'.Tools::safeOutput($this->backward_error).'</div>';
return false;
}
... |
...or if you want to prevent code from being used under PrestaShop 1.4 as long as the Backward Compatibility module is not available:
Code Block |
---|
/* If 1.4 and no backward, then leave */
if (!$this->backward)
return; |