Project

General

Profile

Actions

Plugin system » History » Revision 3

« Previous | Revision 3/42 (diff) | Next »
Oscar van Eijk, 02/03/2011 09:57 AM


Plugin system

Since VirtuaMart v2, the Joomla! plugin system is used form payment and shipper plugins.

Installing plugins

During development the the VM2 branch, the plugins are not available as Joomla install packages, so for test environments, they must be installed manually.

Payment plugins

At the time of writing, only 2 of the former payment plugins have been converted to the new plugin system. Others should follow soon, all help is appreciated!!

Use the SQL query below to add the plugins to your database (assuming the table prefix is "jos_"):

INSERT INTO `jos_plugins` (`id, `name`, `element`, `folder`, `access`, `ordering`
  , `published`, `iscore`, `client_id`, `checked_out`, `checked_out_time`, `params`)
VALUES
 (NULL, 'VMPayment - Authorize', 'authorize', 'vmpayment', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00', '')
,(NULL, 'VMPayment - Cash on delivery', 'cashondel', 'vmpayment', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00','')
;

Next, copy the plugin files (authorize.php, authorize.xml, cashondel.php and cashondel.xml), located in the folder /plugins/vmpayment in the SVN checkout, to the Joomla plugin directory. If that doesn't exist, it must be created first:

mkdir <document_root>/plugins/vmpayment

Now, in the store maintenance, you can add payment methods based on one of these plugins. Note at this moment it is required to select a vendor!

Shipper plugins

This is very similar to the payment plugins. Only 1 plugin has been created (again: all help is appreciated!); 'standard', which provides a basic shipping option for postal services.
Note: Installing the sample data does NOT provide shipping rates anymore!

Use the SQL query below to add the plugins to your database (assuming the table prefix is "jos_"):

INSERT INTO `jos_plugins` (`id, `name`, `element`, `folder`, `access`, `ordering`
  , `published`, `iscore`, `client_id`, `checked_out`, `checked_out_time`, `params`)
VALUES
 (NULL, 'VMShipper - Standard', 'standard', 'vmshipper', 0, 0, 1, 0, 0, 0, '0000-00-00 00:00:00', '')
;

Next, copy the plugin files (standard.php and standard.xml), located in the folder /plugins/vmshipper in the SVN checkout, to the Joomla plugin directory. If that doesn't exist, it must be created first:

mkdir <document_root>/plugins/vmshipper

Now use the 'Shipping' menu item in the backend to add 1 or more carriers based on this plugin. All you need to do here is give the shipper a name and select a vendor (this is optional; when no vendor is selected, this carrier is valid for all vendors).
Finally you can add the shipping rates for the created vendor. Make sure a there's always a valid shipping rate: customers select the carrier only and the plugin must be able to find a mathcing rate based on the total order weight and the shipto address!

Writing plugins

For now, refer to the mainclasses for documentation. This info will be added here in a later stage.

Updated by Oscar van Eijk almost 14 years ago · 3 revisions