43 lines
989 B
PHP
43 lines
989 B
PHP
<?php defined('SYSPATH') or die('No direct access allowed.');
|
|
|
|
/**
|
|
* OSB Route to Market
|
|
*
|
|
* @package OSB
|
|
* @category Models
|
|
* @author Deon George
|
|
* @copyright (c) 2009-2013 Open Source Billing
|
|
* @license http://dev.osbill.net/license.html
|
|
*/
|
|
class Model_RTM extends ORM_OSB {
|
|
protected $_belongs_to = array(
|
|
'account' => array(),
|
|
);
|
|
|
|
protected $_has_many = array(
|
|
'customer' => array('model'=>'account','far_key'=>'id','foreign_key'=>'rtm_id'),
|
|
'agent' => array('model'=>'rtm','far_key'=>'id','foreign_key'=>'parent_id'),
|
|
);
|
|
|
|
public function customers(Model_RTM $rtmo) {
|
|
$return = array();
|
|
|
|
foreach ($rtmo->agents_direct() as $artmo)
|
|
$return = $return+$rtmo->customers($artmo);
|
|
|
|
foreach ($rtmo->customers_direct() as $ao)
|
|
array_push($return,$ao);
|
|
|
|
return $return;
|
|
}
|
|
|
|
public function agents_direct() {
|
|
return $this->agent->find_all();
|
|
}
|
|
|
|
public function customers_direct() {
|
|
return $this->customer->where_active()->find_all();
|
|
}
|
|
}
|
|
?>
|