Extension plugins are used both in the front-end and the backend. They should be created as classes deriving from the base class VmExtendedPlugin:
public function __construct (&$subject, $config=array()) { parent::__construct($subject, $config); $this->_path = JPATH_PLUGINS.DS.$this->getName(); JPlugin::loadLanguage('plg_vmextended_'.$this->getName()); }
Below is the list with events and a description on what moment they are fired.
onVmAdminController()
This event is fired, when the called view was not found in the backend maincontroller. It allows to add new views to virtuemart 2.
Return:
It must execute the controller in the plugin.
Parameters:
- (String ) Name of the controller
onVmSiteController()
This event is fired, when the called view was not found in the frontend maincontroller. It allows to add new views to virtuemart 2.
Return:
It must execute the controller in the plugin.
Parameters:
- (String ) Name of the controller
onVmSqlRemove()
Plugs into the updater model to remove additional VM data (useful if the plugin depends on fields in a VM table)
onVmSqlRestore()
Plugs into the updater model to reinstall additional VM data (useful if the plugin depends on fields in a VM table)
plgVmAfterUserStore()
Return:
$data the manipulated data
Parameters:
- (array $data) formdata as array
plgVmOnUserStore()
Return:
nothing special
Parameters:
- (array $data) formdata as array