OSB enhancements to date

This commit is contained in:
Deon George
2010-11-30 09:41:08 +11:00
parent 8715a2059b
commit ec6a542bc3
478 changed files with 23423 additions and 9309 deletions

View File

@@ -0,0 +1,23 @@
<?php defined('SYSPATH') or die('No direct access allowed.');
/**
* This is class renders responses and forms based on the values from a module.
*
* @package OSB
* @subpackage Utilities
* @category Helpers
* @author Deon George
* @copyright (c) 2010 Deon George
* @license http://dev.leenooks.net/license.html
*/
class StaticList_Module extends StaticListModule {
protected function table($module=NULL) {
if (is_null($module))
throw new Kohana_Exception('Module is a required attribute.');
}
public static function factory() {
return new StaticList_Module;
}
}
?>

View File

@@ -0,0 +1,30 @@
<?php defined('SYSPATH') or die('No direct access allowed.');
/**
* This is class renders Price Type 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_PriceType extends StaticList {
protected function table() {
return array(
0=>_('One-time Charge'),
1=>_('Recurring Membership/Subscription'),
2=>_('Trial for Membership/Subscription')
);
}
public static function factory() {
return new StaticList_PriceType;
}
public static function display($value) {
return static::_display($value);
}
}
?>

View File

@@ -0,0 +1,56 @@
<?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='',$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($price['price_base']),$table[$term]);
if ($price['price_setup'] > 0)
$x[$term] .= sprintf(' + %s %s',Currency::display($price['price_setup']),_('Setup'));
}
return Form::select($name,$x,$product->price_recurr_default);
}
}
?>

View File

@@ -0,0 +1,29 @@
<?php defined('SYSPATH') or die('No direct access allowed.');
/**
* This is class renders Person Title 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_Title extends StaticList {
protected function table() {
return array(
'mr'=>_('Mr'),
'ms'=>_('Ms'),
'mrs'=>_('Mrs'),
'miss'=>_('Miss'),
'dr'=>_('Dr'),
'prof'=>_('Prof')
);
}
public static function factory() {
return new StaticList_Title;
}
}
?>

View File

@@ -0,0 +1,29 @@
<?php defined('SYSPATH') or die('No direct access allowed.');
/**
* This is class renders Yes/No 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_YesNo extends StaticList {
protected function table() {
return array(
0=>_('No'),
1=>_('Yes'),
);
}
public static function factory() {
return new StaticList_YesNo;
}
public static function display($value) {
return static::_display($value);
}
}
?>