57 lines
1.4 KiB
PHP
57 lines
1.4 KiB
PHP
<?php defined('SYSPATH') or die('No direct access allowed.');
|
|
|
|
/**
|
|
* This is class renders Recurring Schedule Times on responses and forms.
|
|
*
|
|
* @package OSB
|
|
* @subpackage Utilities
|
|
* @category Helpers
|
|
* @author Deon George
|
|
* @copyright (c) 2010 Deon George
|
|
* @license http://dev.leenooks.net/license.html
|
|
*/
|
|
class StaticList_RecurSchedule extends StaticList {
|
|
protected function table() {
|
|
return array(
|
|
0=>_('Weekly'),
|
|
1=>_('Monthly'),
|
|
2=>_('Quarterly'),
|
|
3=>_('Semi-Annually'),
|
|
4=>_('Annually'),
|
|
5=>_('Two years'),
|
|
6=>_('Three Years')
|
|
);
|
|
}
|
|
|
|
public static function factory() {
|
|
return new StaticList_RecurSchedule;
|
|
}
|
|
|
|
public static function display($value) {
|
|
return static::_display($value);
|
|
}
|
|
|
|
/**
|
|
* Renders the price display for a product
|
|
*
|
|
* @uses product
|
|
*/
|
|
public static function form($name,$product='',$default='',$addblank=FALSE) {
|
|
if (empty($product))
|
|
throw new Kohana_Exception('Product is a required field for :method',array(':method'=>__METHOD__));
|
|
|
|
$x = '';
|
|
$table = static::factory()->table();
|
|
|
|
foreach ($product->get_price_array() as $term => $price) {
|
|
$x[$term] = sprintf('%s %s',Currency::display(Tax::add($price['price_base'])),$table[$term]);
|
|
|
|
if ($price['price_setup'] > 0)
|
|
$x[$term] .= sprintf(' + %s %s',Currency::display(Tax::add($price['price_setup'])),_('Setup'));
|
|
}
|
|
|
|
return Form::select($name,$x,$default);
|
|
}
|
|
}
|
|
?>
|