<?php defined('SYSPATH') or die('No direct access allowed.');
/**
* This class supports Product Plugins.
*
* @package Product/Plugin
* @category Models
* @author Deon George
* @copyright (c) 2009-2013 Open Source Billing
* @license http://dev.osbill.net/license.html
*/
abstract class Model_Product_Plugin extends ORM_OSB {
// Reset any sorting that may be defined in our parent
protected $_sorting = array();
* The cost of this service
abstract public function cost($annual=FALSE);
* The feature summary should be implemented in plugins.
* It is displayed on the product overview page, as a summary of the products features.
abstract public function feature_summary();
* Return the name of the plugin
protected function plugin() {
return strtolower(preg_replace('/(.*)_([a-zA-Z]+)$/',"$2",get_class($this)));
}
* Form info for admins to update with plugin data
abstract public function render_edit();
abstract public function render_order();
abstract public function supplier();
?>